HTTPリファラー設定がGoogle Maps APIブラウザーキーでどのように機能するかについて混乱しています。
プログラムでGoogleマップの画像をリクエストするWebページを構築しています(主にGoogle Maps Street View Image APIですが、MaxZoomServiceおよびJavaScript APIからStatic Maps APIのクエリもいくつか実行しています)。
HTTPリファラーなしでブラウザキーを作成すると、うまく機能します。
ページのロード元のドメインと一致するHTTPリファラーを使用してブラウザキーを作成すると、403エラーが発生します。 *.mydomain.com/*
などのリファラーを使用しています
どうしたの? HTTPリファラーをページのロード元のドメインと一致するように設定した場合、それはリファラーの正しい使用法ではないでしょうか?なくてもかまいませんが、他の人が私の鍵をつかんでそれを使用することを恐れています。リファラーの仕組みを誤解していますか?
*。example.com/*を使用する場合、www.example.comまたは別のsubdomainのいずれかから取得する必要がありますが、これは成功しますexample.comの場合は機能しません(URLの最初の部分のピリオドに注意してください)
URLの最初の部分を取り除くexample.comへの何らかのリダイレクトがある場合、この場合に使用するのに最適な正規表現は、単純に* example.com/*で、背後にあるすべてのサブドメインをカバーします。 example.com、httpまたはhttps、およびドメイン以降のすべてのコンテキスト。
それが役に立てば幸い。
コンソールのHTTPリファラープレースホルダーによると、*.example.com/*
は確かに機能するはずです。
しかし実際には、これは実際にはそうではありません!
リファラーを次のように設定するだけで問題を解決できました:
example.com
詳細については、 承認済みURLの登録 を参照してください。幸運を!