如何使用客户端 javascript SDK 收到的 FB 访问令牌验证服务器上的电子邮件和名称
How to verify email and name on a server using FB access token received by javascript SDK on a client side
我有一个客户端 (HTML+JavaScript) 和一个服务器 (ASP MVC),我需要向用户提供一些私人信息。为此,我需要验证
- 用户已通过身份验证并且
- 使用用户的电子邮件地址来检索其
私人信息。
我想使用FB认证。它看起来很简单,但有一个缺陷,我相信人们可以告诉我如何解决或者我遗漏了什么。
- 客户端初始化FB SDK并请求用户使用FB进行身份验证
- 第 1 步成功的结果是访问令牌。
- 我们可以使用此访问令牌再次调用 FB 以检索
电子邮件和姓名。
我的服务器如何知道经过身份验证的用户的电子邮件和姓名是什么?
我的理解是客户端不应该向服务器发送电子邮件和名称(它可以被黑客攻击并且不能被信任)而是客户端应该发送接收到的访问令牌,服务器应该使用它来获取用户的电子邮件和姓名,但在服务器端。
请解释,给我一个例子,指出 link 关于如何在服务器上实现它,因为我对它的所有搜索都失败了。
还有一次,我的后端是 ASP MVC。
在服务器上,调用图表 API:
https://graph.facebook.com/me?fields=name,email
使用访问令牌,您将获得正确的数据:
https://graph.facebook.com/me?fields=name,email&access_token=xxx
顺便说一句,您还应该阅读以下内容:https://developers.facebook.com/docs/graph-api/securing-requests
我想我对在 ASP MVC 中需要做什么来获取具有访问令牌的用户信息感到困惑。
建议的 link: https://developers.facebook.com/docs/graph-api/using-graph-api 帮助我理解我真正需要的是进行 HTTPS GET 调用(从服务器)到 "graph.facebook.com" 传递访问 cookie(从客户端接收)到检索我需要的信息并排除 hijacked/compromised 客户向我发送错误电子邮件的可能性。
使用 GRAPH API 意味着对 GRAPH.facebook.com 进行 https 调用 - 我不清楚。
我有一个客户端 (HTML+JavaScript) 和一个服务器 (ASP MVC),我需要向用户提供一些私人信息。为此,我需要验证
- 用户已通过身份验证并且
- 使用用户的电子邮件地址来检索其 私人信息。
我想使用FB认证。它看起来很简单,但有一个缺陷,我相信人们可以告诉我如何解决或者我遗漏了什么。
- 客户端初始化FB SDK并请求用户使用FB进行身份验证
- 第 1 步成功的结果是访问令牌。
- 我们可以使用此访问令牌再次调用 FB 以检索 电子邮件和姓名。
我的服务器如何知道经过身份验证的用户的电子邮件和姓名是什么? 我的理解是客户端不应该向服务器发送电子邮件和名称(它可以被黑客攻击并且不能被信任)而是客户端应该发送接收到的访问令牌,服务器应该使用它来获取用户的电子邮件和姓名,但在服务器端。 请解释,给我一个例子,指出 link 关于如何在服务器上实现它,因为我对它的所有搜索都失败了。 还有一次,我的后端是 ASP MVC。
在服务器上,调用图表 API:
https://graph.facebook.com/me?fields=name,email
使用访问令牌,您将获得正确的数据:
https://graph.facebook.com/me?fields=name,email&access_token=xxx
顺便说一句,您还应该阅读以下内容:https://developers.facebook.com/docs/graph-api/securing-requests
我想我对在 ASP MVC 中需要做什么来获取具有访问令牌的用户信息感到困惑。 建议的 link: https://developers.facebook.com/docs/graph-api/using-graph-api 帮助我理解我真正需要的是进行 HTTPS GET 调用(从服务器)到 "graph.facebook.com" 传递访问 cookie(从客户端接收)到检索我需要的信息并排除 hijacked/compromised 客户向我发送错误电子邮件的可能性。 使用 GRAPH API 意味着对 GRAPH.facebook.com 进行 https 调用 - 我不清楚。