【发布时间】:2013-11-21 22:36:06
【问题描述】:
我一直在尝试将 Google 的 OAuth2 提供程序添加到基于 ServiceStack 构建的概念验证应用程序中,但是当我尝试启动登录时,我不断收到以下错误...
This method requires a current HttpContext. Alternatively, use an overload of this method that allows you to pass in information without an HttpContext`enter code here`
[Auth: 11/21/2013 10:29:25 PM]: [REQUEST: {provider:googleoauth}] System.InvalidOperationException: This method requires a current HttpContext. Alternatively, use an overload of this method that allows you to pass in information without an HttpContext. at DotNetOpenAuth.Requires.ValidState(Boolean condition, String message) at DotNetOpenAuth.Messaging.Channel.GetRequestFromContext() at DotNetOpenAuth.OAuth2.WebServerClient.ProcessUserAuthorization(HttpRequestBase request) at ServiceStack.Authentication.OAuth2.OAuth2Provider.Authenticate(IServiceBase authService, IAuthSession session, Auth request) at ServiceStack.ServiceInterface.Auth.AuthService.Authenticate(Auth request, String provider, IAuthSession session, IAuthProvider oAuthConfig) at ServiceStack.ServiceInterface.Auth.AuthService.Post(Auth request) at ServiceStack.ServiceInterface.Auth.AuthService.Get(Auth request) at lambda_method(Closure , Object , Object ) at ServiceStack.ServiceHost.ServiceRunner`1.Execute(IRequestContext requestContext, Object instance, TRequest request)
我还下载了演示应用 SocialBootstrapApi 并向其中添加了 Google Oauth2 提供程序,并且能够使其正常工作。我已将 web.config 中的配置复制到自托管项目的 app.config 文件中,但仍然无法正常工作。
任何帮助都会很棒!
感谢您的帮助。
【问题讨论】:
标签: oauth servicestack self-hosting