Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oauth 2.0 访问保护资源API提供“;401未经授权”;错误_Oauth 2.0_Owin.security - Fatal编程技术网

Oauth 2.0 访问保护资源API提供“;401未经授权”;错误

Oauth 2.0 访问保护资源API提供“;401未经授权”;错误,oauth-2.0,owin.security,Oauth 2.0,Owin.security,我想在此基础上为我的项目添加授权。我已经完成了检索访问令牌的工作。但是,当使用令牌访问受保护的资源API时,我会得到一个401 unauthorized错误 该请求有一个带有方案承载的授权标头,其中包含访问令牌。与本教程中一样,API使用[Authorize]属性进行保护。在启动期间,我使用 使用OAuthBeareAuthentication(新的Microsoft.Owin.Security.OAuth.OAuthBeareAuthenticationOptions()) 我不清楚为什么这个

我想在此基础上为我的项目添加授权。我已经完成了检索访问令牌的工作。但是,当使用令牌访问受保护的资源API时,我会得到一个
401 unauthorized
错误

该请求有一个带有方案承载的授权标头,其中包含访问令牌。与本教程中一样,API使用
[Authorize]
属性进行保护。在启动期间,我使用

使用OAuthBeareAuthentication(新的Microsoft.Owin.Security.OAuth.OAuthBeareAuthenticationOptions())


我不清楚为什么这个请求是未经授权的。我可以通过什么检查来找到问题的原因?

在尝试和检查了许多内容后,我注意到授权服务器和资源服务器使用的是不同版本的Owin和Owin.Security。在更新旧版本后,它工作了。令牌在这两个版本之间一定发生了更改。

尝试并检查了许多内容后,我注意到授权服务器和资源服务器使用的是不同版本的Owin和Owin.Security。在更新旧版本后,它工作了。令牌在两个版本之间必须已更改。

您的授权服务器和资源服务器是相同的还是不同的服务器?@jumuro这些服务器不相同,但是它们使用的是相同的机器。只有两种可能的方法获取401错误。1:您使用的令牌无效。2:您的访问令牌已过期。如果访问令牌已过期,请刷新它。@Suraj该令牌未过期。检索后立即使用它。刷新令牌仍然会给我一个401。您如何在标头中传递令牌?它应该是以下形式:授权:您的授权服务器和您的资源服务器是相同的还是不同的服务器?@jumuro这些服务器不一样,但是它们使用的是相同的机器。只有两种可能的方法可以获取401错误。1:您使用的令牌无效。2:您的访问令牌已过期。如果访问令牌已过期,请刷新它。@Suraj该令牌未过期。检索后立即使用它。刷新令牌仍然会给我一个401。您如何在标头中传递令牌?应采用以下形式:授权: