无需 cookie 即可嵌入 Google 地图

Ome*_*bic 8 google-maps-embed

由于欧盟 cookie 法,我试图以不使用 cookie 的方式嵌入谷歌地图。
我想使用 Embed API,因为它可以显示位置信息(评分、路线按钮...)。

我知道 Maps JavaScript API 不使用 cookie,而是通过域 maps.googleapis.com 工作。
但是,Maps Embed API 使用 www.google.com,它设置了 NID cookie。

如果我尝试像这样替换 URL

<iframe
  width="600"
  height="450"
  frameborder="0" style="border:0"
  src="https://maps.googleapis.com/maps/embed/v1/place?key=MY_API_KEY&q=Space+Needle,Seattle+WA" allowfullscreen>
</iframe>
Run Code Online (Sandbox Code Playgroud)

有一个 1 秒的闪光,它可以正确显示它,但随后覆盖了“出现问题”的错误。
在控制台中,返回此错误:

Google Maps JavaScript API error: UnauthorizedURLForClientIdMapError
https://developers.google.com/maps/documentation/javascript/error-messages#unauthorized-url-for-client-id-map-error
Your site URL to be authorized: https://maps.googleapis.com/maps/embed/v1/place?key=MY_API_KEY&q=Space+Needle,Seattle+WA
Run Code Online (Sandbox Code Playgroud)

有没有办法在没有 cookie 的情况下使用 Embed API?

Ome*_*bic 0

我已经重新审视了这个问题,并且无法再重现该问题。使用 Brave(网站关闭了 Brave Shields)和 Firefox(禁用了 uBlock Origin 扩展)进行了测试。

目前看来它https://www.google.com/maps/embed本身并没有使用任何cookies。如果客户是新访问您的网站并查看嵌入了 Google 地图的页面,则不会为该域设置任何新的 Cookiegoogle.com。但是,由于嵌入是 iframe,因此在检查工具中,您将看到因与您使用的所有 google.com 服务进行交互而拥有的任何其他 cookie。但这些客户已经拥有,并且与您的嵌入式地图或一般网站无关。

现在,这意味着您可以在选择加入 Cookie 限制的网站上毫无问题地使用 Google 地图嵌入代码(通过共享获得)。