ASP.Net 核心 Web API 使用 Facebook 进行身份验证

ASP.Net Core Web API Authentication with Facebook

我有一个使用 ASP.Net Core 开发的 Web API。我还有一个用 Next.js 开发的客户端应用程序,它使用 NextAuth.js 来处理身份验证。

在 UI 中,当用户通过身份验证时,我可以访问来自 Facebook 的访问令牌。 我的问题是如何使用此访问令牌来验证发送到后端的请求 API.

这是用于注册Facebook认证方案的后端代码(都是标准的):

builder.Services.AddAuthentication()
    .AddFacebook(
        facebookOptions =>
        {
            facebookOptions.AppId = "<my_app_id>";
            facebookOptions.AppSecret = "<my_app_secret>";
        });

我想构建一个可以使用特定访问令牌对我的用户进行身份验证的 Postman 请求,但我不知道将此访问令牌放在哪里,也不知道这是否可行。 只需像这样发送请求(不做任何修改)就会导致 Facebook 登录页面可视化。

您的 Asp.NetCore 项目集成了 Facebook 登录。登录后获取的token只能访问当前项目中受保护的资源,如:[Authorize].

如果要访问Facebook的资源,需要自己写代码获取token,然后访问资源。

1. How to Get Facebook Access Token in a couple of minutes: 2020 guide

获取facebook后access_token,即可访问Facebook的资源