远程服务器返回错误:(400)错误请求Microsoft.AspNet.Membership.OpenAuth

时间:2013-10-17 17:29:21

标签: facebook dotnetopenauth

当我创建一个新的asp.net webform .net 4.0并且我配置AuthConfig.cs时,我正在使用Microsoft.AspNet.Membership.OpenAuth:

OpenAuth.AuthenticationClients.AddFacebook(
                appId: "my appId",
                appSecret: "my appSecret");

在Facebook应用配置中: Facebook登录网站:http://www.tindep.com

但是当我使用facebook登录时出现错误:

Server Error in '/' Application.
The remote server returned an error: (400) Bad Request.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Net.WebException: The remote server returned an error: (400) Bad Request.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:


[WebException: The remote server returned an error: (400) Bad Request.]
   System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request) +283
   System.Net.WebClient.DownloadString(Uri address) +100
   DotNetOpenAuth.AspNet.Clients.FacebookClient.QueryAccessToken(Uri returnUrl, String authorizationCode) +235
   DotNetOpenAuth.AspNet.Clients.OAuth2Client.VerifyAuthentication(HttpContextBase context, Uri returnPageUrl) +142
   DotNetOpenAuth.AspNet.OpenAuthSecurityManager.VerifyAuthentication(String returnUrl) +239
   Microsoft.AspNet.Membership.OpenAuth.OpenAuthManager.VerifyAuthentication(HttpContextBase context, String returnUrl) +116
   Microsoft.AspNet.Membership.OpenAuth.OpenAuth.VerifyAuthentication(String returnUrl) +82
   EVNSoft.Website.Account.RegisterExternalLogin.ProcessProviderResult() +205
   EVNSoft.Website.Account.RegisterExternalLogin.Page_Load() +24
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +9808229
   System.Web.UI.Control.OnLoad(EventArgs e) +92
   System.Web.UI.Control.LoadRecursive() +54
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18055 

虽然Google,Twitter,msdn登录成功(查看tindep.com/Account/Login.aspx) 这是托管时唯一的错误(tindep.com/Account/Login.aspx)。 localhost:57846 / Account / Login.aspx登录facebook成功。

请帮助我找到原因。

非常感谢!

1 个答案:

答案 0 :(得分:1)

有一个与此相关的缺陷: https://github.com/DotNetOpenAuth/DotNetOpenAuth/issues/203

但显然不再维护该库: https://github.com/DotNetOpenAuth/DotNetOpenAuth/issues/317#issuecomment-29580565

...虽然在许多Microsoft文档中仍然引用它。调查与另一个缺陷相关的问题。

另请参阅:facebook login using oauth fails on live server