【问题标题】:Setting HTTP Referrer on Maps API Browser Key Results in 403 Error在 Maps API 浏览器键上设置 HTTP 引荐来源网址会导致 403 错误
【发布时间】:2016-02-26 04:53:24
【问题描述】:

我对 HTTP Referrer 设置如何在 Google Maps API 浏览器密钥上工作感到困惑。

我正在构建一个网页,该网页以编程方式从 Google Maps 请求图像(主要是 Google Maps Street View Image API,但也从 Javascript API 查询 MaxZoomService 和 Static Maps API)。

如果我创建一个没有 HTTP Referrer 的浏览器密钥,它会很好用。

如果我使用与加载页面的域匹配的 HTTP 引荐来源网址创建浏览器键,则会收到 403 错误。我正在使用 *.mydomain.com/* 之类的推荐人

发生了什么事?如果我将 HTTP Referrer 设置为与加载页面的域相匹配,那么这不是对 referrer 的正确使用吗?我可以不用,但恐怕这会让其他人抓住我的钥匙并使用它。我是否误解了推荐人的工作方式?

【问题讨论】:

标签: google-maps google-maps-api-3 google-street-view


【解决方案1】:

根据控制台中的 HTTP referrer 占位符,*.example.com/* 确实可以工作。

但实际上,情况似乎并非如此!

我可以通过简单地将引荐来源网址设置为:

example.com

如需了解更多信息,请查看Registering authorized URLs。祝你好运!

【讨论】:

  • 泰。实际上,它在他们的文档中不起作用。它仅在您回答时有效。
  • 是的,他们的文档被塞满了——我打开了一个关于它的支持案例,因为我花了很长时间才弄清楚为什么它不起作用,直到我找到这个 SO Q/A。他们的关心系数为 0。
【解决方案2】:

如果您使用 *.example.com/*,您必须来自 www.example.com 或另一个 子域,但如果您来自 example.com,这将不起作用(请注意 URL 第一部分中的句点)

如果您有某种重定向到 example.com 的方式去除了 URL 的第一部分,那么在这种情况下使用的最佳正则表达式就是 *example.com/* 将涵盖example.com、http 或 https 后面的所有子域以及您的域之后的所有上下文。

希望对你有帮助。

【讨论】:

  • 这不会允许其他人使用来自引用 URL anotherexample.com 的相同 API 密钥吗?
猜你喜欢
  • 2018-05-19
  • 2017-12-20
  • 2016-12-22
  • 1970-01-01
  • 1970-01-01
  • 2011-07-15
  • 1970-01-01
  • 2017-06-18
  • 1970-01-01
相关资源
最近更新 更多