我试图调用Google Places API来返回我附近的餐馆列表。当我从浏览器调用它时它工作正常。但是,当我从使用Ionic Framework构建的iOS App中调用它时,它会因数据NULL,状态0错误而失败。
我研究了很多,发现这是一个CORS问题。我查看了有关如何为iOS App发出GET请求的Google文档。我使用应用程序的软件包ID为我的应用程序创建密钥和客户端ID。使用这里的步骤https://developers.google.com/accounts/docs/OAuth2InstalledApp#overview,我获得了一个access_token,我将其用作查询参数,就像提到的文档一样。什么都行不通。出了什么问题?
@plexer 我使用服务器密钥从浏览器调用URL。如上所述,这是有效的。从应用程序,如果我使用此密钥,我收到以下错误: {"数据":空,"状态":0,"配置" {"方法":" GET" " transformRequest":[空]," transformResponse":[空]," URL":" sameUrlThatWorksOnBrowser""集管和#34;:{"接受":" application / json,text / plain, / "}}," statusText": ""}
答案 0 :(得分:0)
Google Places API使用公共API访问密钥,而不是oAuth。好消息是,开始使用它们要简单得多。
按照this page上“身份验证”部分下的说明创建新的公开API访问密钥,然后将该密钥包含在应用的& key参数中。
单击“创建新密钥”按钮后,选择“服务器密钥”。这有点奇怪,因为你从iOS调用API,但它会起作用。