2014-09-03 3 views
1

J'utilise MVC avec Owin connexion externe avec Facebook.Facebook PopUp Connexion avec Owin

Owin n'ouvre pas de connexion facebook comme popup.Il redirige la page vers facebook.

Je sais qu'il y a une option pour que le login de facebook s'ouvre comme popup. Nous devons ajouter le "& dialog = popup" dans l'URL.

Je n'ai pas cette option avec OWIN.

Y a-t-il un moyen de le faire?

+0

La popup est une fonctionnalité de l'API JavaScript. Comme il doit interagir avec JavaScript sur la page, il ne peut pas vous rediriger entièrement vers Facebook. Cependant, avec OAuth traditionnel, une redirection est comment cela fonctionne. Donc, non, vous ne pouvez pas utiliser un popup. –

Répondre

3

J'ai eu le même problème. Après avoir lu la source, j'ai trouvé une solution:

Fondamentalement: vous devez aller de l'avant et créer un fournisseur d'authentification pour Facebook. Créez donc une classe qui hérite de FacebookAuthenticationProvider. Dans cette classe, remplacez la méthode "ApplyRedirect". Faire paraître quelque chose comme:

public override void ApplyRedirect(FacebookApplyRedirectContext context) 
{ 
    context.Response.Redirect(context.RedirectUri + "&display=popup"); 
} 

Maintenant simplement le fil de cette classe avec votre configuration, comme ceci:

app.UseFacebookAuthentication(new FacebookAuthenticationOptions 
{ 
    Provider = new **<the name of the class that you created>**() 
    // the rest of your configuration such as app ID and secret 
}); 

Et cela devrait être le!