Permission denied error in all.js

2019-01-17 22:36发布

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

5条回答
闹够了就滚
2楼-- · 2019-01-17 22:57

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.

查看更多
太酷不给撩
3楼-- · 2019-01-17 23:01

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楼-- · 2019-01-17 23:04

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.

查看更多
别忘想泡老子
5楼-- · 2019-01-17 23:05

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; 
};
查看更多
叼着烟拽天下
6楼-- · 2019-01-17 23:06

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.

查看更多
登录 后发表回答