Connexion Facebook OAuth pour les applications de toile iframe affiche une image de logo et une légende Aller à Facebook.com au lieu de se connecter

Je suis en train de configurer mon (iframe) Facebook application à utiliser pour l'authentification OAuth.
J'ai utilisé le python-sdk de Facebook, mais je ne suis pas vraiment convaincu par le résultat, encore.

Le problème est que lorsque je rediriger un utilisateur qui n'a jamais accédé à ma demande à la page de connexion, mon iframe afche une vilaine page intermédiaire, tels que le suivant:

Connexion Facebook OAuth pour les applications de toile iframe affiche une image de logo et une légende Aller à Facebook.com au lieu de se connecter

Si l'utilisateur clique sur "Aller à Facebook.com" le lien, elle est alors redirigé vers le standard de la "Demande de Permission" de la page.

Connexion Facebook OAuth pour les applications de toile iframe affiche une image de logo et une légende Aller à Facebook.com au lieu de se connecter

Est-il un moyen d'éviter la première page et conduire l'utilisateur directement à la seconde?

Ce problème se pose sur le premier accès pour les utilisateurs qui n'ont pas accordé la permission de mon application.

Le code de connexion est basée sur le protocole OAuth exemple dans le SDK Python:

class LoginHandler(BaseHandler):
def get(self):
verification_code = self.request.get("code")
args = dict(client_id=FACEBOOK_APP_ID, redirect_uri=self.request.path_url)
if self.request.get("code"):
args["client_secret"] = FACEBOOK_APP_SECRET
args["code"] = self.request.get("code")
raw_response = urllib.urlopen(
"https://graph.facebook.com/oauth/access_token?" +
urllib.urlencode(args)).read()
logging.debug("access_token raw response " + raw_response)
response = cgi.parse_qs(raw_response)
access_token = response["access_token"][-1]
# Download the user profile and cache a local instance of the
# basic profile info
graph = facebook.GraphAPI(access_token)
profile = graph.get_object("me")
user = User.get_by_key_name(profile["id"])
if not user:
user = User(key_name=str(profile["id"]),
id=str(profile["id"]),
name=profile["name"],
firstname=profile["first_name"],
profile_url=profile["link"],
access_token=access_token)
user.put()
elif user.access_token != access_token:
# we already know this user, but we need to update
user.access_token = access_token
user.put()
set_cookie(self.response, "fb_user", str(profile["id"]),
expires=time.time() + 30 * 86400)
self.response.headers["P3P"] = 'CP="IDC CURa ADMa OUR IND PHY ONL COM STA"'
self.redirect("/")
else:
self.redirect(
"https://graph.facebook.com/oauth/authorize?" +
urllib.urlencode(args))

source d'informationauteur abahgat