Permission denied error in all.js

2019-01-17 23:03发布

问题:

I am using all.js for facebook implementation. I used a facebook button on signup page . by logging through facebook i am getting user name and email of facebook user into the fields on sign up page. It's working fine on Chrome, Safari and Firefox but its giving error on IE8.

the error is in all.js line 22

{FB.UIServer._loadedNodes[a.id]=b;if(a.params)b.fbCallID=a.id;

Please help me if any one knows why this problem is occuring .

Thanks Udham

回答1:

Try this out. It worked for me, may help some one.

FB.UIServer.setLoadedNode = function (a, b){FB.UIServer._loadedNodes[a.id] = b; }

Ideally attach debugger and see which method breaks up and hack it.



回答2:

This is a known bug: http://bugs.developers.facebook.net/show_bug.cgi?id=19042 It is set as CLOSED FIXED, but many users are still reporting the error in the comments area.

A hack is suggested on comment #19:

FB.init({
....
....
});
FB.UIServer.setActiveNode = function(a,b){FB.UIServer._active[a.id]=b;} // IE hack to correct FB bug

It worked for some people. I must say it didn't work for me, but I thought it was worth to mention.



回答3:

I just ran into this (or a similar problem). Mine was in all.js line 22, char 3160, right after document.documentElement.style.display='none'; It was a permission denied error.

In my case, it was because the channelUrl was using a different protocol (https) than my app's iframe was being loaded under (http). I tried //mydomain.com/channel.html, but that gave me a different error. I solved it by dynamically choosing http/https for channelUrl when generating the html.



回答4:

I found a solution. Already posted an answer here https://stackoverflow.com/a/8504794/287604, but for the desperate the quick fix:

FB.init({
    appId:        'xxxxx',
    appSecret:    'xxxxxxxxx',
    status:        true
    cookie:        true
});

// this code solves the issue
FB.UIServer.setLoadedNode = function (a, b) { 
FB.UIServer._loadedNodes[a.id] = b; 
};


回答5:

I am still struggling with this but an odd work around I just noticed is if when using fb:login-button when setting the show-faces attribute to "true" it suddenly works fine. I tried 2 side by side fb:login buttons and the button with show faces set to either false or not included would pass back the error every time.