我正在努力为Android 4.3设备上的Cordova/PhoneGap应用程序中的第三方身份验证(即GitHub)设置正确的returnTo路径。在GoAngular中执行此操作的命令是$goConnectionProvider.$loginUrl(providerName, returnTo)
。
在我的开发环境中,我传递window.location.href
作为我的returnTo参数,当然这工作得很好,因为应用程序的位置报告为http://localhost:[port]/[path]
。注意,我必须在GoInstant仪表板中将localhost
列入白名单。
值得注意的是,第三方授权在Android设备上运行PhoneGap开发者应用程序时也可以正常工作(因为PhoneGap应用程序基本上通过本地IP地址服务我的应用程序,我也将其列入白名单)。
在Android上,报告给window.location.href
的路径是file:///android_asset/www/index.html#/app/
。因此,这是我提供给$goConnectionProvider.$loginUrl
的路径。不幸的是,$goConnection抛出错误,因为这不是一个HTTP或HTTPS url。
我的returnTo路径应该是什么?有什么建议吗?
遗憾的是,GoInstant Auth API目前不支持Cordova/PhoneGap。浏览器将重定向请求视为跨协议请求并阻止它。
我们已经在路线图中添加了Cordova/PhoneGap支持,当它可用时我会更新这个答案!