asp.net-core - 在 ASP.NET Web API Core 中,如何强制 401 响应
问题描述
我在我的 ASP.NET Core Web API 服务中使用 OAuth2 和 OIDC。当我得到一个 JWT 令牌时,它会验证它。
就我而言,我的发行人不匹配。我能够看到这一点,因为验证的结果在JwtBearerEvents
事件 中浮出水面OnAuthenticationFailed
。这就是我可以知道我需要返回 401 的地方。
那时如何将我的服务设置为返回 401?
解决方案
我没有机会在实际项目中对此进行测试,但如果您只想返回 401,那么您可能想尝试以下操作:
OnAuthenticationFailed = context =>
{
context.Response.StatusCode = 401;
context.Response.WriteAsync("Unauthorized").Wait();
return Task.CompletedTask;
}
推荐阅读
- proguard - 在 Apache Flink 应用程序上运行 ProGuard
- mongodb - MongoDB 查询 - 子文档
- java - 如何将进程中的 Json 对象放入 Google Dataflow 中的 Bigquery 表中
- symfony - 尝试在另一个 API 平台中调用 API 路由时超过最大执行时间
- c# - 在C#中单击按钮一一读取excel文件单元格值
- r - 使用 R 从 csv 文件创建 xml 文件
- html - 通过 JS 提示将自定义光标添加到 CSS 样式表
- sql - 查询返回空表
- c++ - C++在类构造函数中递归创建对象
- python - kubeflow ParallelFor 使用之前的 containerop 输出