突然间,DotNetOpenAuth返回(400)错误的请求

突然间,DotNetOpenAuth返回(400)错误的请求

问题描述:

我的应用程序已经部署了近6个月,最新版本是大约3个星期前。突然间,DotNetOpenAuth返回(400)错误的请求

突然,今天Facebook Auth停止工作。该webapp没有改变或重新部署,Facebook应用程序设置没有改变。

使用Twitter进行身份验证仍然正确。

这是例外:

DotNetOpenAuth.Messaging.ProtocolException: Error occurred while sending a direct message or getting the response. ---> System.Net.WebException: The remote server returned an error: (400) Bad Request. 
    at System.Net.HttpWebRequest.GetResponse() 
    at DotNetOpenAuth.Messaging.StandardWebRequestHandler.GetResponse(HttpWebRequest request, DirectWebRequestOptions options) 
    --- End of inner exception stack trace --- 
    at DotNetOpenAuth.Messaging.StandardWebRequestHandler.GetResponse(HttpWebRequest request, DirectWebRequestOptions options) 
    at DotNetOpenAuth.Messaging.StandardWebRequestHandler.GetResponse(HttpWebRequest request) 
    at DotNetOpenAuth.Messaging.Channel.GetDirectResponse(HttpWebRequest webRequest) 
    at DotNetOpenAuth.Messaging.Channel.RequestCore(IDirectedProtocolMessage request) 
    at DotNetOpenAuth.Messaging.Channel.Request(IDirectedProtocolMessage requestMessage) 
    at DotNetOpenAuth.OAuth2.ClientBase.UpdateAuthorizationWithResponse(IAuthorizationState authorizationState, EndUserAuthorizationSuccessAuthCodeResponse authorizationSuccess) 
    at DotNetOpenAuth.OAuth2.WebServerClient.ProcessUserAuthorization(HttpRequestInfo request) 

任何想法可能会发生?我在Facebook的网站上没有看到有关突发变化或服务降级的信息。

它再次开始工作,让我相信这是Facebook的一个错误。

很可能Facebook 最终升级了OAuth 2.0支持,以符合最新的OAuth 2.0规范草案,该规范与您正在使用的DotNetOpenAuth版本不兼容。尝试下载最新的DotNetOpenAuth CTP并查看是否有帮助。

也就是说,从来没有任何保证与Facebook或任何其他OAuth 2.0服务器的互操作性。 OAuth 2.0是未定型规格,因此互操作性问题几乎是一种保证。

+0

安德鲁,谢谢你的回应。奇怪的是,突然开始重新开始工作,这导致我相信Facebook几个小时有问题,而不是图书馆中的不兼容。 – 2011-12-22 18:51:14