有些疑问我试图在我的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
密钥的文档,但它不起作用。现在我的问题是基本上按照我必须使用的密钥协议?
答案 0 :(得分:2)
如果您使用谷歌提供的SDK,那么您将使用iOS密钥。
如果您使用的是网络界面,NSURLConnection
或NSURLSession
,则可以使用浏览器密钥。
只有在发出请求的代码实际在服务器上运行时,才应使用服务器密钥。
答案 1 :(得分:1)
仅使用Google地图Apis的服务器密钥。
检查文档: https://developers.google.com/maps/documentation/geocoding/get-api-key
<强>步骤:强>
根据Google文档:
Google Maps API可用于Android或iOS应用,Web浏览器以及HTTP Web服务。每个平台中的API都需要特定类型的密钥。 Google Maps Geocoding API仅适用于服务器密钥。同一平台的API可以使用相同的密钥。
要在请求中指定密钥,请将其包含为密钥参数的值。
在示例链接中添加您的密钥,如果密钥正确,您将获得结果。
快乐编码:)