gpt4 book ai didi

c# - 使用 Postman 的 ASP.NET Web API 授权

转载 作者:太空狗 更新时间:2023-10-29 20:58:21 26 4
gpt4 key购买 nike

我创建了一个 ASP.NET Web API 并将 Authorize 属性应用于 API Controller 。现在,我想使用 Postman 对其进行测试,但出现授权错误。

Controller 代码是:

[Authorize]
[HttpPost]
public IHttpActionResult Attend([FromBody] int gigId)
{
var attendance = new Attdendance
{
GigId = gigId,
AttendeeId = User.Identity.GetUserId()
};

_context.Attdendances.Add(attendance);
_context.SaveChanges();
return Ok();
}

我的请求看起来像这样 http://prntscr.com/c8wz0b

我正在使用这个高级 Postman 休息客户端 http://prntscr.com/c8xafd

如何在Postman中通过授权?

最佳答案

编辑 23/08/2016我假设您正在使用身份进行 cookie 身份验证

// Enable the application to use a cookie to store information for the signed in user
// and to use a cookie to temporarily store information about a user logging in with a third party login provider
// Configure the sign in cookie
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
LoginPath = new PathString("/Account/Login"),
Provider = new CookieAuthenticationProvider
{
// Enables the application to validate the security stamp when the user logs in.
// This is a security feature which is used when you change a password or add an external login to your account.
OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
validateInterval: TimeSpan.FromMinutes(30),
regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
}
});

这是 Visual Studio 中带有标识的默认配置。我可以争论为什么它不是安全的好选择,但这不是重点。

你可以在“ postman ”中找到它,但这很棘手我就是这样做的:

  1. 通过您的登录页面提出请求:

enter image description here

  1. 以以下形式获取防伪 token :

enter image description here

  1. 使用数据形式的帖子参数在登录页面上发出帖子请求:

enter image description here

现在您的 postman 获得了身份验证 cookie,您可以使用 [authorize] 标签请求 web api

编辑

对于工具,您必须添加授权 header 。

  • 进入标题表单
  • 添加 HTTP header “授权”
  • 点击编辑按钮等 ;)

screen shot

之前的回答已删除

关于c# - 使用 Postman 的 ASP.NET Web API 授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39081232/

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