DiP*_*Pix 5 asp.net-identity postman asp.net-core identityserver4
我正在尝试使用Postman与Identity Server Asp.net Core一起测试我的API。
这就是我要尝试的方式:
HttpGet对https:// localhost:5000 / Account / Login的第一个请求,并在响应正文中收到:<input name="__RequestVerificationToken" type="hidden" value="CfDJ8MoS9upoM4dNp8Kx-AdvA-uYr13_PAkuMZpzYMV8UmxZq5GdLTvN-Ht5NpTLmPtlhL5d5z2Hu2vUJoJGhk1AMlARDcOwqgq7Cef1dfQL_vl4tIFM4kx9RZPz8DHU26-U9qLnKAIstZgR42-1FuGNh24" />HttpPost以https://开头本地主机:5000 /帐号/登录与RequestVerificationToken使用令牌从身体接收到的HttpGet请求。

而且总是error 400如您在上面的屏幕截图中所见。
在Visual Studio中,我可以看到捕获了一些请求,但显然是不正确的。

如果我将删除属性,[ValidateAntiForgeryToken]那么当然一切都会很好,但是显然因为禁用了验证。
小智 6
您需要执行以下操作才能发送此类请求:
1.) 在 x-www-form-urlencoded 中输入 __RequestVerificationToken 键值(不要忘记双下划线)
2.) 您需要将 .AspNetCore.Antiforgery cookie 添加到 Postman 的 Cookies 部分。
例如像这样 .AspNetCore.Antiforgery.1XHiLFgQI2w=您的 cookie 值;路径=/;域=本地主机;过期=会话;
您可以在 Google 开发者工具的“应用程序”部分找到 .AspNetCore.Antiforgery cookie
Google 开发者工具图片中的 .AspNetCore.Antiforgery cookie
Cee*_*our -2
在postman中,您\xe2\x80\x99d需要将内容类型设置为form url编码。
\n并将标头中的请求验证令牌作为“RequestVerificationToken”发送
\n但是,如果您只需要一个不记名令牌,那么您需要使用\n 来调用 POST https://<your identity server>/connect/token\n
| 归档时间: |
|
| 查看次数: |
2657 次 |
| 最近记录: |