【发布时间】:2014-07-28 00:10:21
【问题描述】:
我正在尝试在 iOS 的 PhoneGap 应用程序中实现 oAuth 身份验证。我遇到了以下问题。我主要针对 Google oAuth 进行了测试,但也尝试了 LinkedIn,结果类似:
- 我能够启动 InAppBrowser,登录我的 Google 帐户并授权该应用访问我的帐户。
- InAppBrowser 成功返回访问令牌、过期等。当应用程序尝试发回访问令牌时,我在 XCode 中收到以下错误:
webView:didFailLoadWithError - -1004: 无法连接到服务器。
当我在 iOS 模拟器或实际 iPhone 上运行应用程序时会发生这种情况。
我尝试过的:
- 尝试多个不同的代码示例,包括 oauth.io 为其服务提供的代码示例。
- 在另一台计算机上安装 Xcode 并在那里尝试。
- 试用旧版 PhoneGap
有趣的是,当我将“重定向 URI”设置为:
http://localhost
.. 由 Google API 控制台和我经历过的所有 OAuth 实施教程定义。显然,InAppBrowser 代码应该阻止页面加载并获取附加到 URL 字符串的数据。如果我将重定向换成 Google 控制台提供的其他值(urn:ietf:wg:oauth:2.0:oob),它会重定向到一个实际页面,其中包含将输入中的代码复制并粘贴到我的 URL 栏的指令。在 InAppBrowser 的上下文中,这对我没有帮助。
我不知道下一步该尝试什么。有什么建议吗?
【问题讨论】: