gpt4 book ai didi

php - 带有 php 后端的 AngularJS 应用程序上的 Facebook 身份验证

转载 作者:搜寻专家 更新时间:2023-10-31 21:08:58 25 4
gpt4 key购买 nike

我正在开发一个主要基于 CRUD 的应用程序。它是用 PHP 编写的,并通过 JSON API 公开。

前端是用 AngularJS 编写的,我正进入需要整理身份验证的阶段。我知道我希望它是基于 token 的,最好它应该能够简单地使用 Facebook 登录。

由于所有数据等都在 PHP 后端,我认为这就是应该进行身份验证的地方。我的想法是让 AngularJS 前端请求 PHP 后端登录,此时后端关闭并使用 facebook 登录,将 token 保存在数据库中,并将其发送回 AngularJS 前端,以便它可以提供它与后续请求。

我有点卡住的地方是让 AngularJS 要求后端进行身份验证。处理它的最佳方法是什么?我应该只在前端有一个链接来向后端发出 http 请求吗?但如果我这样做,用户将如何通过 Facebook 对话获得登录信息。

假设我的前端是 http://front.myapp.com后端是http://back.myapp.com然后在类似 http://back.myapp.com/auth 的地方处理身份验证

我的问题是,考虑到后端也必须关闭并与 facebook 通信,我应该在 AngularJS 端编写什么样的代码才能使其与后端正确通信?真正的代码示例将是最有帮助的。

最佳答案

我建议你使用这个库 http://jberta93.github.io/ng-facebook-api/并在您的前端进行 Facebook 身份验证。您可以轻松检索用户数据,然后使用 $http.post 将此数据提交到您的后端应用程序!然后,如果您需要通过 Facebook 与后端对话,您可以在前端身份验证中使用从库返回的 authResponse!这样,在您的应用程序域中,您只指定前端 url。而且您的用户看不到后端应用程序!

一个小例子:

$scope.logAndRetriveFacebookUser = function(){
facebook.getUser().then(function(r){
var user = r.user; //User data returned;
var authResponse = r.authResponse; //Token auth, id etc..
$http.post('/backend-login-url', {user:user,authResponse:authResponse});
}, function(err){
console.log("Ops, something went wrong...");
});
}

关于php - 带有 php 后端的 AngularJS 应用程序上的 Facebook 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26054940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com