2012-02-07 5 views
0

最近、Facebookを使って自分のサイトにログインする際に問題が発生しました。私はこのエラーメッセージが表示され続ける:確認コードの検証でエラーが発生する原因は何ですか? (MVC3号のfacebook oAuth)

Facebook.FacebookOAuthException :(OAuthException)検証コードの検証中にエラーが発生しました。

サイトとソフトウェアに大きな変更がありました。変更を掘り下げる前に、シンプルで一般的な原因のいくつかを取り除きたいと思います。

これはファイアウォールの問題(このサイトはファイアウォールの背後にあり、私たちのネットワークの外部からはアクセスできない)でしょうか?このエラーメッセージの最も一般的な原因は何ですか?

答えて

1

redirectUriパラメータがhttps://www.facebook.com/dialog/oauthコールで使用したリダイレクトリスと同じであることを確認してください。

using Facebook; 
public ActionResult fbOAuth(string code, string state) 
{ 
    FacebookOAuthResult oauthResult; 
    if (FacebookOAuthResult.TryParse(Request.Url, out oauthResult)) 
    { 
    string token = HttpUtility.UrlDecode(state); 
    if (oauthResult.IsSuccess) 
    { 
     var oAuthClient = new FacebookOAuthClient(FacebookApplication.Current); 
     oAuthClient.RedirectUri = 
       new Uri("http://" + "localhost:3434" + "/Home/fbOAuth"); 
     dynamic tokenResult = oAuthClient.ExchangeCodeForAccessToken(code); 
     string accessToken = tokenResult.access_token; 
<... etc ...> 
:初期認証要求

using Facebook; 
public ActionResult fbLogOn(string token, string returnUrl) 
     { 
      var oAuthClient = new FacebookOAuthClient(FacebookApplication.Current); 

      oAuthClient.RedirectUri = 
         new Uri("http://" + "localhost:3434" + "/Home/fbOAuth"); 
<... etc ...> 

与え例えば

は、Facebookの応答のためのハンドラはまったく同じURIにリダイレクトURIを設定していることを確認します

関連する問題