Postman请求时为200状态,但从浏览器请求时为401

问题描述 投票:0回答:2

我的 API 调用(Asp.Net WebAPI 和 Angular)遇到了令人沮丧的问题。我使用不记名令牌授权来授权请求。当我从 Postman 向 API 发出请求时,它返回 200 Ok,但是当我从浏览器(Angular)尝试它时,我得到 401 Unauthorized。

如果我在控制器操作顶部使用

[AllowAnonymous]
属性,我就可以让它工作,但出于安全原因,我想保留
[Authorize]
属性。

我不确定是什么导致了这个错误。 这是来自浏览器的请求标头的屏幕截图。正如您所看到的,它还包括有效的不记名令牌。有趣的是,授权属性适用于我的控制器中的其他操作。

https://i.sstatic.net/K5OB1.png

提前谢谢您。

angular asp.net-web-api authorization postman bearer-token
2个回答
0
投票

我正在回答我自己的问题,因为我找到了出现此问题的原因。我向在 Azure 应用服务上发布的 API 发出令牌请求,并尝试在我的本地主机 API 中使用该令牌。不知何故,这是导致问题的原因。当我通过邮递员向本地主机 API 发出请求时,我使用从本地主机 API 收到的令牌。因此,使用 localhost API 中的令牌可以解决这个问题。


0
投票

但是当令牌生成后我将令牌用于其他 API 时,我收到 401 错误。虽然两人都是本地人。 请帮忙解答一下

© www.soinside.com 2019 - 2024. All rights reserved.