Facebook Oauth authorize redirect fails in Internet Explorer for extended permissions
I am using facebook oauth with web authentication and extended permissions
My resulting authorization URL ends up like
https://graph.facebook.com/oauth/authorize?client_id={myAppId}&redirect_uri={my_redirect_uri}&scope=offline_access,read_stream,friends_activities,user_activities,user_photos,friends_photos,user_location,user_about_me,user_activities
This works fine in Mozilla and Chrome however IE cannot display the webpage.
however if i reduce the number of extended permissions to just offline_access,read_stream,friends_activities,user_activities it works fine in IE too.
I see that facebook redirects this above request to the login.php page for som开发者_运维百科e reason if I have more than 6 permissions in the scope paramter It will not redirect in IE
Anyone sees this issue ?
I am experiencing the same thing, I think!
Does anyone know how to solve this?
My code seems to work in Firefox, Chrome, and Safari but not in IE (tested in IE9 beta, not sure about other IE versions).
Maybe this perms list is too long:
{perms:'email,user_birthday,user_education_history,user_work_history,friends_education_history,publish_stream'}
What can we do?
UPDATE: I may have found a workaround. IE doesn't seem to let Facebook logon from the main page. For whatever reason, IE8 works when logging on from a page other than the root. I haven't tested other versions of IE. I added some javascript/jquery to check for visitors using IE and bounce those people to a separate logon page that is identical to the root page. And it seems to work. When testing, be sure to clear your browser history/cookies and close and restart your browser.
var ieLogonPage='/logon/' ;
if(($.browser.msie)&&(window.location.pathname=='/')) window.location=ieLogonPage;//IE doesn't seem to let Facebook logon from the main page.
I don't know why this seems to work.
精彩评论