我应该如何查找/追踪这样的问题:
我们有一个Angular应用程序调用.Net Core Web API,启用了CORS,并通过Azure AD进行身份验证,获取Bearer令牌。使用Bearer令牌,API调用会在401 Unauthorized时不时失败,其他时间为200.但我将相同的Bearer Token放入任何REST客户端,并且API调用始终有效。
非常感谢任何意见。
更多上下文/分析:
这个Angular应用程序是 唯一的应用程序使用CORS。这显然是我正在研究的内容。
此Angular应用程序的本地开发服务器(Webpack dev服务器)和部署服务器(IIS)是不同的,但产生 相同的结果,所以它可能不是服务器配置问题。
答案 0 :(得分:1)
我明白了。 比赛条件。当它试图检索它时,还没有可用的承载令牌。 当我在REST客户端中手动执行API调用时,令牌可用。只有当我有一些后续的API调用而不管第一个API调用时,我才能更快地识别出这个问题。
简单的超时会证明它有效。
我们将优化承载令牌存储和一些缓存管理,以获得永久性解决方案。