Вот моя ситуация: у меня есть Javascript-плагин, который при нажатии запускает всплывающее окно на сторонних сайтах, которые его размещают. Затем этот popop отображает IFRAME, в котором я использую Facebook в качестве метода входа.Небезопасная попытка JavaScript получить доступ к кадру ... Протоколы должны соответствовать
Когда всплывающее запущен, он недавно начал давать ошибку:
Unsafe JavaScript attempt to access frame with URL http://{THIRD-PARTY-SITE-GOES-HERE} from frame with URL https://s-static.ak.facebook.com/connect/xd_arbiter.php?version=18#channel= …%3Dtabmodule%26utm_term%3D200000%26fb_xd_fragment%23xd_sig%3Df2ade8e518%26.
The frame requesting access has a protocol of 'https', the frame being accessed has a protocol of 'http'. Protocols must match.
Сам IFRAME находится на HTTPS и используется для правильной работы. Я не уверен, почему Chrome пытается получить доступ к родительской странице. У меня нет контроля над родительскими страницами, поэтому я не могу сделать их https.
Вот мой FB код инициализации внутри IFRAME:
window.fbAsyncInit = function()
{
FB.init({
appId: '{myappid}',
status: true,
cookie: true,
xfbml: true,
oauth: true,
channelURL : 'https://degree3.com/channel.php'
});
FB.getLoginStatus(function(response)
{
if (resp = response.authResponse)
{
$('#fb_button').attr("onclick", "signinViaFacebook(response.authResponse.userID, response.authResponse.accessToken);").show();
}
});
};
(function()
{
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
Любые идеи, как я могу исправить ошибку?
_ «IFRAME сам по себе на https» _ - сообщение об ошибке, похоже, предполагает иное. – CBroe
@CBroe Извините, если я не был более ясен: сообщение об ошибке по какой-то причине относится к родительской странице (сторонний-сайт-идет-здесь), а не к самой IFRAME. Iframe контролируется мной и находится на https. – Wemmick
Об ошибках: [Небезопасная попытка JavaScript для доступа к кадру с URL-адресом] (http://stackoverflow.com/q/4324108/1456376): Не похоже на меня. Все их страницы находятся в одном домене, а Facebook не участвует. [Неверная ошибка JavaScript в доступе к фрейму с URL-адресом ... »постоянно генерируется в инспекторе веб-браузера Chrome] (http://stackoverflow.com/questions/3010170/unsafe-javascript-attempt-to-access-frame-with-url-error -being-непрерывно): Также не совсем то же самое: моя ошибка не является непрерывной, и это предотвращает нормальную работу SDK Facebook JS. – Wemmick