I have an iframe FB application. We have three places where we develop it: my local host, the stage server on which we test the application, and the production server. The local host and production have HTTPS. In local and stage applications, sandbox mode is enabled. All versions of the application are identical, the code is the same. Stage and production - this is completely the same server machine with the same settings, except for HTTPS.
Now, what happens only on my server application . When I click on where to invoke the JQuery UI dialog, it causes the following error in my Firebug: Permission denied to access property 'Arbiter' . In this case, the dialog will not be called. He somehow raised the dynamically loaded canvas_proxy.php file in this code:
function doFragmentSend() { var location = window.location.toString(), fragment = location.substr(location.indexOf('#') + 1), params = {}, parts = fragment.split('&'), i, pair; lowerPageDomain(); for (i=0; i<parts.length; i++) { pair = parts[i].split('=', 2); params[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]); } var p = params.relation ? resolveRelation(params.relation) : parent.parent;
The line if (p == parent || !p.Arbiter || !p.JSON) { calls it. My script code binding the JS API looks like this:
<script src="https://connect.facebook.net/en_US/all.js#appId=APPID"></script>
Does anyone have a clue why this could happen? I found this and this , but these problems do not seem to be useful to me (or I just do not understand). Maybe due to HTTPS? Why did he work the day before yesterday? I'm desperate: - (
source share