c# - 如何在 Core .NET 2.2 项目中启用 facebook 身份验证?
问题描述
我有一个C#
在 Asp.NET Core 2.2 之上编写的项目。
我正在使用内置身份来启用帐户身份验证。
我现在正在尝试添加集成以启用 Facebook 身份验证。我按照文档在 Facebook 上创建了一个应用程序,然后在我的网站上启用它。但是,每次我尝试使用 Facebook 登录时,都会收到以下错误
URL 被阻止:此重定向失败,因为重定向 URI 未在应用的客户端 OAuth 设置中列入白名单。确保客户端和 Web OAuth 登录已打开,并将所有应用程序域添加为有效 OAuth 重定向 URI。
在我的 Facebook 帐户中,在Valid OAuth redirect URIs
我放置的部分https://example.com/signin-facebook
中,如下面的屏幕截图所示。
为了在我的网站中成功启用 Facebook 身份验证,还需要做什么?
这是我添加提供程序的方法
AuthenticationBuilder authBuilder = services.AddAuthentication();
foreach (var provider in providerService.GetAll())
{
if (provider.Name == ExternalLoginProvider.Facebook)
{
authBuilder.AddFacebook(options =>
{
options.AppId = provider.AppId;
options.AppSecret = provider.Secret;
});
}
if (provider.Name == ExternalLoginProvider.Twitter)
{
authBuilder.AddTwitter(options =>
{
options.ConsumerKey = provider.AppId;
options.ConsumerSecret = provider.Secret;
});
}
// other providers
}
解决方案
当您列入白名单https://www.realestatebyareen.com/signin-facebook
时,您是在将应用程序部署到此 URL 后还是在本地测试 Facebook 登录?
如果在本地,那么您还需要将托管本地应用程序的 URL 列入白名单,很可能类似于https://localhost:<some-port>/signin-facebook
.
推荐阅读
- php - 具有多维数组的 Codeigniter 会话
- rhel7 - “A start job running for read and set NIS from /etc/sysconfig/network/” RHEL7 中的错误阻止启动
- javascript - 如何使用来自不同类的函数来获取 api?Javascript
- javascript - 具有自定义服务器的 next.js 应用程序未正确呈现
- ios - 使 UILabel 很好地适合集合视图单元格
- math - DFA + 带乘法、加法、括号的计数器
- sql - 如何在 SQL 中实现 ER 图中显示的客户和帐户表
- sql-server - 每个多维数据集 OLAP 多个事实表
- android - LinearLayout 不显示所有 ListView 但只有一个孩子
- reactjs - 在 React-Navigation 中获取任何设备上标签栏的高度