Pab*_*las 8 javascript facebook ionic
我正在尝试使用Parse.FacebookUtils.logIn来处理Ionic视图,当我在浏览器中点击ionic服务时,我已成功地使其工作,但问题是当我尝试使用Ionic View模拟器登录时,基本上认证Facebook窗口没有弹出,我不明白为什么.
我遵循了这个文档:https: //www.parse.com/docs/js/guide#users-facebook-users
一切都在浏览器中运行良好,只是试图让它在Ionic视图中工作.
有任何想法吗 ?
我放弃了带有 Ionic 的 Parse sdk 并开始使用另一个插件,使用下面的文档:
\n\nhttp://ngcordova.com/docs/plugins/oauth/
\n\nhttps://github.com/nraboy/ng-cordova-facebook-example/blob/master/www/js/app.js
\n\n这是我为使其与 Parse 一起使用而编写的代码:
\n\n$scope.fbLogin = function() {\n var result;\n $cordovaOauth.facebook(\'987971754588010\', [\'public_profile, user_birthday, email\']).then(function(success) {\n\n $http.get("https://graph.facebook.com/v2.2/me", { params: { access_token: success.access_token, fields: "id,name,birthday,last_name,first_name,email,gender,picture.type(large)", format: "json" }}).then(function(result) {\n\n $localstorage.setObject(\'fbData\', result.data);\n\n var expiration_date = new Date();\n expiration_date.setSeconds(expiration_date.getSeconds() + success.expires_in);\n expiration_date = expiration_date.toISOString();\n\n var facebookAuthData = {\n "id": result.data.id,\n "access_token": success.access_token,\n "expiration_date": expiration_date\n };\n\n Parse.FacebookUtils.logIn(facebookAuthData, {\n success: function(user) {\n if (!user.existed()) {\n alert("User signed up and logged in through Facebook!");\n $scope.openModal();\n } else {\n alert("User logged in through Facebook!");\n $scope.syncFbData(null);\n }\n },\n error: function(user, error) {\n console.log(\'ERROR: \' + error);\n var alertPopup = $ionicPopup.alert({\n title: \'Error de autenticaci\xc3\xb3n de usuario\',\n template: \'El usuario cancel\xc3\xb3 autenticaci\xc3\xb3n con Facebook o no autoriz\xc3\xb3 permisos. \'\n });\n }\n });\n }, function(error) {\n console.log(\'ERROR: \' + error);\n var alertPopup = $ionicPopup.alert({\n title: \'Error de conexi\xc3\xb3n\',\n template: \'No se ha logrado establecer conexi\xc3\xb3n con Facebook.\'\n });\n });\n }, function(error) {\n console.log(\'ERROR: \' + error);\n var alertPopup = $ionicPopup.alert({\n title: \'Error de conexi\xc3\xb3n\',\n template: \'No se ha logrado establecer conexi\xc3\xb3n con Facebook.\'\n });\n });\n };\n\n $scope.syncFbData = function (newUsername) {\n var fbData = $localstorage.getObject(\'fbData\')\n var currentUser = Parse.User.current();\n if (newUsername) {\n currentUser.set(\'username\', newUsername);\n }\n currentUser.set(\'nombre\', fbData.first_name);\n currentUser.set(\'apellidos\', fbData.last_name);\n currentUser.set(\'email\',fbData.email);\n currentUser.set(\'fechaNacimiento\', new Date(fbData.birthday));\n currentUser.set(\'imagenUrl\',fbData.picture.data.url);\n currentUser.set(\'genero\',((fbData.gender === \'male\') ? \'Hombre\' : \'Mujer\') );\n currentUser.save(null, {\n success: function (response) {\n $scope.closeModal();\n $state.go(\'app.lista-cervezas\');\n },\n error: function (response, error) {\n console.log(\'ERROR: \' + error);\n var alertPopup = $ionicPopup.alert({\n title: \'Nombre de usuario invalido\',\n template: \'El nombre de usuario ingresado ya se encuentra en uso!\'\n });\n }\n });\n };\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
333 次 |
| 最近记录: |