現在作成中のアプリでgooglemapsAPIを利用しているのですが、
APIkeyの管理でつまづいています
githubに公開することを考えてAPIKeyはrailsのcredential管理にしたいのですが、
<script src="https://maps.googleapis.com/maps/api/js?key=<%=Rails.application.credentials.map_api_key%>&callback=initMap" async defer></script>
とするとgooglemapsAPIの表示がうまくいかず、
グレーの透過背景に、正しく読み込まれませんでしたというエラーメッセージが表示されます
devツールで確認してみると、NoAPIkeyとinvalidAPIkeyのエラーが発生しています
直でAPIKeyを入力している場合は正しく表示されるのですが、
なぜcredentialから読み込もうとするとエラーとなってしまうのかアドバイスをいただきたいです。
credentialは以下のように記述しています
aws: aws_access_key: aaa aws_secret_key: aaa map_api_key: aaaaaaaa secret_key_base: aaaaaa
また、リファラーなどの制限を適切に行なっているAPIKeyでもgithubに公開するのはよくないのでしょうか?
色々な方のリポジトリを見ているとちらほら公開されている方もいらっしゃるようなので疑問です、
回答よろしくお願いいたします!
追記
APIKeyをcredentialで書いた時はdevツールのhtml上にAPIKeyはありませんでした
直で書いた場合は当然ですがありました。
一応の追記をさせていただきます!
追記
コンソールでmap_api_keyが読み込めなかったため、
google: map_api_key: aaaaaa
のように変更しました。
それに伴いスクリプトタグの中身を
<script src="https://maps.googleapis.com/maps/api/js?key=<%=Rails.application.credentials.google[:map_api_key]%>&callback=initMap" async defer></script>
と変更したのですが、undefined method `[]' for nil:NilClassが出てしまいました。。。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/26 06:29