何时使用服务器密钥以及何时在Google地图中使用ios密钥

时间:2015-11-05 14:14:34

标签: android ios objective-c google-maps api-key

有些疑问我试图在我的API应用中调用google地点iOS,为此我需要 Google API密钥。我通过谷歌开发者控制台并制作了新的iO enter code here S键。我运行应用程序并显示错误“此IP,网站或移动应用程序无权使用此API密钥”。我用服务器密钥替换iOS密钥并且工作正常。但根据文档(Documentation link),它定义如下:

服务器密钥

如果您的应用程序在服务器上运行,请创建并使用服务器密钥。不要在服务器代码之外使用此密钥。例如,不要将其嵌入网页中。要防止配额被盗,请限制您的密钥,以便仅允许从服务器的源IP地址发出请求。

浏览器密钥

如果您的应用程序在客户端(例如Web浏览器)上运行,请创建并使用浏览器密钥。为防止您的密钥在未经授权的网站上使用,请仅允许您管理的域中的推介。

iOS

如果您的应用程序在iOS设备上运行,请创建并使用iOS密钥。 Google会验证每个请求是否来自与您指定的某个捆绑包标识符匹配的iOS应用程序。应用程序的.plist文件包含其包标识符。示例:com.example.MyApp

Android键

如果您的应用程序在Android设备上运行,请创建并使用Android密钥。为此,您需要使用该密钥指定应用程序的SHA1指纹和包名称。

根据我需要使用iOS密钥的文档,但它不起作用。现在我的问题是基本上按照我必须使用的密钥协议?

2 个答案:

答案 0 :(得分:2)

如果您使用谷歌提供的SDK,那么您将使用iOS密钥。

如果您使用的是网络界面,NSURLConnectionNSURLSession,则可以使用浏览器密钥。

只有在发出请求的代码实际在服务器上运行时,才应使用服务器密钥。

答案 1 :(得分:1)

仅使用Google地图Apis的服务器密钥。

检查文档: https://developers.google.com/maps/documentation/geocoding/get-api-key

<强>步骤:

  • 转到Google Developers Console。
  • 创建或选择项目。
  • 点击继续以启用API。
  • 转到凭据以获取服务器密钥(并设置API凭据)。
  • 为防止配额被盗,请按照这些最佳做法保护您的API密钥。
  • (可选)启用结算功能。有关详细信息,请参阅使用限制。

根据Google文档:

Google Maps API可用于Android或iOS应用,Web浏览器以及HTTP Web服务。每个平台中的API都需要特定类型的密钥。 Google Maps Geocoding API仅适用于服务器密钥。同一平台的API可以使用相同的密钥。

要在请求中指定密钥,请将其包含为密钥参数的值。

示例: https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=62.25227243964484%2C59.12338379770518&radius=500&key=YOUR_API_KEY

在示例链接中添加您的密钥,如果密钥正确,您将获得结果。

快乐编码:)