2011-06-11 2 views
6

Je suis tryng à utiliser l'authentification Facebook au http://landlordscores.co.uk/account/login.aspx mais après la connexion avec facebook, la page de rappel affiche "Demande signée invalide. (Signature invalide.)". L'identifiant et le secret de l'application sont corrects et aucune autre information ne semble être enregistrée. Cela arrive chaque fois que j'essaie de me connecter avec Facebook.Facebook API - Demande signée non valide. (Signature invalide.)

Modifier: Pour faire l'appel, j'utilise à peu près le même code que l'exemple. Dans le balisage:

<iframe src="<%= this.RegistrationUrl %>" 
         scrolling="auto" 
         frameborder="no" 
         style="border:none" 
         allowTransparency="true" 
         width="100%" 
         height="500"> 
        </iframe> 

Dans le code-behind:

public string RegistrationUrl { 
    get 
     { 
    var url = string.Format(
    "http://www.facebook.com/plugins/registration.php?client_id={0}&redirect_uri={1}&fields={2}", 
    FacebookApplication.Current.AppId, 
    HttpUtility.UrlEncode(AppBLL.GetAbsoluteURL("~/Account/fbregcallback.aspx")), 
    HttpUtility.UrlEncode("[{\"name\":\"name\"},{\"name\":\"email\"},{\"name\":\"location\"},{\"name\":\"password\",\"view\":\"not_prefilled\"},{\"name\":\"captcha\"}]"));   this.RegisterUser.ContinueDestinationPageUrl = this.Request.QueryString["ReturnUrl"]; 
    this.hdnPassLength.Value = Membership.MinRequiredPasswordLength.ToString(); 
          HttpUtility.UrlEncode("[{\"name\":\"name\"},{\"name\":\"email\"},{\"name\":\"location\"},{\"name\":\"password\",\"view\":\"not_prefilled\"},{\"name\":\"captcha\"}]"));  
    this.hdnPassLength.Value = Membership.MinRequiredPasswordLength.ToString(); 
    } 
} 
+0

Pouvez-vous poster le code que vous utilisez pour passer l'appel? – bkaid

+0

Merci, j'ai ajouté un exemple de code – Echilon

+0

Quand vous dites que vous utilisez un code d'échantillon ... où obtenez-vous votre échantillon? Vous ne semblez pas utiliser le Facebook C# SDK (votre question porte ce SDK étiqueté), et votre code n'utilise pas le plugin JavaScript SDK/Registration recommandé par Facebook à https://developers.facebook.com/docs/guides/ web/# login –

Répondre

4

Peut-être que vous avez déjà fait cela mais j'ai eu le même problème et tout ce que j'avais à faire était d'ajouter mon ID d'application et mon secret à web.config.

Dans le fichier web.config, mon problème était sur cette ligne. S'assurer que ceux-ci sont remplis et précis devrait résoudre le problème.

<facebookSettings appId="xxxxxxxx" appSecret="xxxxxxx" cookieSupport="true" /> 

Espérons que cela aide!

-2

Vous devez vérifier vos paramètres de l'application sur facebook. Faites attention aux URL et autres paramètres.

+1

Jolie réponse boiteuse pour encaisser sur la prime. Vérification des paramètres étaient corrects était la première chose que j'ai essayé avant de poster. – Echilon

1

Je pense que vous trouverez que cela a quelque chose à voir avec les cookies. Je jouais avec les différents exemples de sites Web qui ont dans le sdk. J'ai effacé mes cookies et j'ai arrêté d'avoir cette erreur.

Questions connexes