ios - 使用 ionic 和 ngCordovaOauth 卡在 Facebook 登录
<p><p>我已经为此苦苦挣扎了 2 天或更长时间。
它只是不起作用。无论如何,我都会卡在“无法获取/回调”屏幕上。</p>
<p>我正在尝试登录 Facebook。</p>
<p>我的设置:</p>
<ul>
<li>网站网址:<a href="http://localhost/callback" rel="noreferrer noopener nofollow">http://localhost/callback</a> </li>
<li>移动网站网址:<a href="http://localhost/callback" rel="noreferrer noopener nofollow">http://localhost/callback</a> </li>
<li> ionic :1.4.1</li>
<li><p>我跑了:</p>
<pre><code>cordova plugin add org.apache.cordova.inappbrowser
cordova plugin add cordova-plugin-whitelist
</code></pre> </li>
<li><p>在我的 app.js 中:</p>
<pre><code>angular.module('starter', ['ionic', 'ngCordova','starter.controllers', 'starter.services','app-constants','ui.utils.masks.br.phone'])
</code></pre>
<p>在我的 login-service.js:</p>
<pre><code>angular.module('starter.services').service('LoginService', function($http, apiEndPoint, $location, $cordovaOauth)
</code></pre>
<p>....</p>
<pre><code>facebookLogin: function() {
return $cordovaOauth.facebook(appID, ["email", "read_stream", "user_website", "user_location", "user_relationships"]).then(function(result) {
accessToken = result.access_token;
console.log(JSON.stringify(result));
return accessToken
}, function(error) {
alert("There was a problem signing in!See the console for logs");
alert(error);
console.log(error);
});
},
</code></pre> </li>
</ul>
<p>在 config.xml:</p>
<pre><code><access origin="*"/>
</code></pre>
<p>在 iOS 模拟器和 iOS 真实设备上运行。通过 ionic emulate ios 和 Xcode 进行仿真。</p>
<p>我已经重新安装了所有东西,包括 Nodejs。</p>
<p>我明白了:
<img src="/image/gnztQ.png" alt="error using iOS emulator"/> </p>
<p>我认为这与 ng-cordova-oauth 错误有关:<a href="https://github.com/nraboy/ng-cordova-oauth/issues/43" rel="noreferrer noopener nofollow">https://github.com/nraboy/ng-cordova-oauth/issues/43</a> </p>
<p>我也发过帖。</p>
<p>有什么想法吗?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>我解决了!!问题不在于 ngCordovaOauth。
问题是 Facebook 返回的是错误代码而不是 access_token。</p>
<p>所以解决方案正在改变:</p>
<pre><code>facebookLogin: function() {
return $cordovaOauth.facebook(appID, ["email", "read_stream", "user_website", "user_location", "user_relationships"]).then(function(result) {
</code></pre>
<p>到这里:</p>
<pre><code>facebookLogin: function() {
return $cordovaOauth.facebook(appID, ["email"]).then(function(result) {
</code></pre></p>
<p style="font-size: 20px;">关于ios - 使用 ionic 和 ngCordovaOauth 卡在 Facebook 登录,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/30262925/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/30262925/
</a>
</p>
页:
[1]