InvalidOperationException:没有 OWIN 身份验证管理器与请求关联
InvalidOperationException: No OWIN authentication manager is associated with the request
我使用示例模板创建了一个新的 WebAPI 项目(VS 2013,.net framework 4.5.1,c#),添加了一个新的控制器并在我的本地计算机上进行了测试。在我的电脑中,一切正常(调试\发布)。
将此发布到 Azure 托管时,我收到此错误消息:
ExceptionMessage=No OWIN authentication manager is associated with the request.
ExceptionType=System.InvalidOperationException
Message=An error has occurred.
StackTrace= at System.Web.Http.Owin.PassiveAuthenticationMessageHandler.SuppressDefaultAuthenticationChallenges(HttpRequestMessage request)
at System.Web.Http.Owin.PassiveAuthenticationMessageHandler.<SendAsync>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at System.Web.Http.HttpServer.<SendAsync>d__0.MoveNext()
我不知道是什么原因。所以,我用谷歌搜索了一下。
我尝试过的解决方案:
- According to this report,我尝试添加这个 (Microsoft.Owin.Host.SystemWeb) nuget 包,但没有解决我的问题。
- According to this solution,用户建议将某些代码行更改为:
Microsoft.AspNet.WebApi.Owin(使用Owin方法)
我不明白,我应该把这个代码行放在哪里(并替换我现有项目中的代码行)。
感谢您的帮助。
好的。我找到了解决此问题的解决方法。
我的工作, 我完成的步骤:
- 我刚刚创建了一个新的 WebAPI 项目(默认模板)并将其上传到 Azure 中的一个新网站。测试了它。这很好用。所以,从这里我了解到问题不在我的代码中。
- 现在我上传了我的新项目并覆盖了我现有的不工作的项目。现在,我的新项目也停止工作了。和我之前的项目一样的问题。
- 此时我了解到我的 Azure 帐户出了问题。所以我删除了我的旧网站帐户并重新创建它。现在它工作正常。
所以,请尝试删除并再次上传您的项目。
我使用示例模板创建了一个新的 WebAPI 项目(VS 2013,.net framework 4.5.1,c#),添加了一个新的控制器并在我的本地计算机上进行了测试。在我的电脑中,一切正常(调试\发布)。
将此发布到 Azure 托管时,我收到此错误消息:
ExceptionMessage=No OWIN authentication manager is associated with the request.
ExceptionType=System.InvalidOperationException
Message=An error has occurred.
StackTrace= at System.Web.Http.Owin.PassiveAuthenticationMessageHandler.SuppressDefaultAuthenticationChallenges(HttpRequestMessage request)
at System.Web.Http.Owin.PassiveAuthenticationMessageHandler.<SendAsync>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at System.Web.Http.HttpServer.<SendAsync>d__0.MoveNext()
我不知道是什么原因。所以,我用谷歌搜索了一下。 我尝试过的解决方案:
- According to this report,我尝试添加这个 (Microsoft.Owin.Host.SystemWeb) nuget 包,但没有解决我的问题。
- According to this solution,用户建议将某些代码行更改为: Microsoft.AspNet.WebApi.Owin(使用Owin方法)
我不明白,我应该把这个代码行放在哪里(并替换我现有项目中的代码行)。
感谢您的帮助。
好的。我找到了解决此问题的解决方法。
我的工作, 我完成的步骤:
- 我刚刚创建了一个新的 WebAPI 项目(默认模板)并将其上传到 Azure 中的一个新网站。测试了它。这很好用。所以,从这里我了解到问题不在我的代码中。
- 现在我上传了我的新项目并覆盖了我现有的不工作的项目。现在,我的新项目也停止工作了。和我之前的项目一样的问题。
- 此时我了解到我的 Azure 帐户出了问题。所以我删除了我的旧网站帐户并重新创建它。现在它工作正常。
所以,请尝试删除并再次上传您的项目。