tools personalizado example developers con compartir boton javascript ios facebook cross-domain facebook-javascript-sdk

personalizado - login con facebook javascript



Error de seguridad de Facebook y mensajes de dominio cruzado (1)

También me encontré con este problema, y ​​después de buscarlo, parece que hay un error en el llenado automático del navegador: el seguimiento de la pila que se envía a nuestro clúster de registro tiene el siguiente aspecto:

g@https://example.com:5:190, g@https://example.com:7:323, extractNewForms@https://example.com:13:37, extractForms@https://example.com:8:381, global code@https://example.com:1:98

Como puede ver, el error ocurre en algún lugar de la función extractForms , que (para nosotros) no existe en ninguna parte del código base. Una búsqueda en Google revela que tanto extractForms como extractNewForms son parte de la biblioteca de autocompletar del navegador, y el hilo here sugiere que hay un error allí (los comentarios 12 y 15 son más relevantes para su problema).

Por lo que puedo decir, esto tampoco está relacionado específicamente con Facebook: en nuestros registros vemos errores similares para más iframes, incluidos los iframes de (sub) dominios que controlamos nosotros mismos.

Desafortunadamente, no conozco ninguna solución o solución alternativa, y también dudo mucho que una solución / solución (tierra de usuario) sea realmente posible. Creo que lo único que puedes hacer es ignorar estos errores.

Tenemos una aplicación que utiliza el facebook javascript sdk y las capacidades de inicio de sesión.

Hemos estado notando que este error aparece en nuestros registros de producción. Específicamente para dispositivos iOS con versiones 10.3 y superiores. También parece estar solo orientado a los navegadores de safari.

SecurityError (DOM Exception 18): bloqueó un marco con origen " https://www.mymadeupsite.com " para que no accediera a un marco con origen " https://staticxx.facebook.com ". El marco al que se accede establece "document.domain" en "facebook.com", pero el marco que solicita el acceso no lo hizo. Ambos deben establecer "document.domain" en el mismo valor para permitir el acceso.

Aquí está nuestra función de inicio:

init: function(options) { var facebookUrl, scriptInclude; Facebook.baseHost = options.baseHost; if (typeof FB !== "undefined" && FB !== null) { return Facebook.setup(); } else { if (options.appId == null) { throw ''Facebook: cannot init without appId''; } window.fbAsyncInit = function() { FB.init({ appId: options.appId, version : ''v2.3'', channelUrl: options.channelUrl || ("" + document.location.protocol + "//" + document.location.host + "/channel.html"), status: true, cookie: false, xfbml: false, oauth: true }); return Facebook.setup(); }; $(''body'').append(''<div id="fb-root"></div>''); facebookUrl = "//connect.facebook.net/" + (Facebook.getLocaleFacebookSupports(Social.SETTINGS.fbLocale)) + "/sdk.js"; scriptInclude = "<script type=/"text/javascript/" async=/"true/" src=/"" + facebookUrl + "/"></script>"; return $(''#fb-root'').append(scriptInclude); } }

Mi pregunta, ¿por qué solo obtenemos este error en dispositivos iOS y versiones 10.3?