I am using the following code for implementing login using facebook through 
OAuth. I am using my app id and app key instead of FB_CLIENT_ID and 
FB_CLIENT_SERET.

*FB_CLIENT_ID='XXX'*
*FB_CLIENT_SECRET="YYY"*

*## import required modules*
*try:*
*    import json*
*except ImportError:*
*    from gluon.contrib import simplejson as json*
*from facebook import GraphAPI, GraphAPIError*
*from gluon.contrib.login_methods.oauth20_account import OAuthAccount*


*## extend the OAUthAccount class*
*class FaceBookAccount(OAuthAccount):*
*    """OAuth impl for FaceBook"""*
*    AUTH_URL="https://graph.facebook.com/oauth/authorize?"*
*    TOKEN_URL="https://graph.facebook.com/oauth/access_token"*

*    def __init__(self):*
*        OAuthAccount.__init__(self, None, FB_CLIENT_ID, FB_CLIENT_SECRET,*
*                              self.AUTH_URL, self.TOKEN_URL,*
*                              scope='email,user_about_me,user_activities, 
user_birthday, user_education_history, user_groups, user_hometown, 
user_interests, user_likes, user_location, user_relationships, 
user_relationship_details, user_religion_politics, user_subscriptions, 
user_work_history, user_photos, user_status, user_videos, publish_actions, 
friends_hometown, friends_location,friends_photos',*
*                              state="auth_provider=facebook",*
*                              display='popup')*
*        self.graph = None*

*    def get_user(self):*
*        '''Returns the user using the Graph API.*
*        '''*
*        if not self.accessToken():*
*            return None*

*        if not self.graph:*
*            self.graph = GraphAPI((self.accessToken()))*

*        user = None*
*        try:*
*            user = self.graph.get_object("me")*
*        except GraphAPIError, e:*
*            session.token = None*
*            self.graph = None*

*        if user:*
*            if not user.has_key('username'):*
*                username = user['id']*
*            else:*
*                username = user['username']*
                
*            if not user.has_key('email'):*
*                email = '%s.fakemail' %(user['id'])*
*            else:*
*                email = user['email']    *

*            return dict(first_name = user['first_name'],*
*                        last_name = user['last_name'],*
*                        username = username,*
*                        email = '%s' %(email) )*

*## use the above class to build a new login form*
*auth.settings.login_form=FaceBookAccount()*


However, when I am trying to open my application and login, it displays 
this error:

*{
   "error": {
      "message": "Invalid redirect_uri: Given URL is not permitted by the 
Application configuration",
      "type": "OAuthException",
      "code": 191,
      "fbtrace_id": "G6FVywSKnCm"
   }
}*


I am not getting why it is so.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to