17

से सुरक्षा त्रुटि हमारे पास एक ऐसा एप्लिकेशन है जो फेसबुक जावास्क्रिप्ट एसडीके और लॉगिन क्षमताओं का उपयोग करता है।फेसबुक और क्रॉस डोमेन मैसेजिंग

हम इस त्रुटि को हमारे उत्पादन लॉग में देख रहे हैं। आईओएस उपकरणों के लिए विशेष रूप से संस्करण 10.3 और उच्चतम के साथ। इसके अलावा केवल लक्षित कर सफारी ब्राउज़रों

SecurityError (डोम अपवाद 18) हो रहा है: मूल "https://www.mymadeupsite.com" के साथ एक फ्रेम अवरोधित मूल "https://staticxx.facebook.com" के साथ एक फ्रेम तक पहुँचने से। फ्रेम को "document.domain" को "facebook.com" पर सेट किया जा रहा है, लेकिन फ्रेम अनुरोध करने का अनुरोध नहीं था। दोनों को पहुंच की अनुमति देने के लिए "document.domain" को उसी मान पर सेट करना होगा।

यहाँ हमारे init समारोह है:

 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); 
      } 
     } 

मेरा प्रश्न, इसलिए हम केवल iOS उपकरणों और संस्करणों 10.3 पर इस त्रुटि हो रही है?

उत्तर

13

मैं भी इस मुद्दे में भाग गया, और खुदाई के आसपास वह ब्राउज़र की स्वत: भरण में एक बग हो रहा है के बाद: स्टैकट्रेस है कि हमारे लॉगिंग क्लस्टर के लिए भेज लग रहा है के रूप में पालन:

[email protected]://example.com:5:190, 
[email protected]://example.com:7:323, 
[email protected]://example.com:13:37, 
[email protected]://example.com:8:381, 
global [email protected]://example.com:1:98 

आप कर सकते हैं के रूप में देखें, त्रुटि कहीं extractForms फ़ंक्शन में होती है, जो (हमारे लिए) कोड बेस में कहीं भी मौजूद नहीं है। एक Google खोज से पता चलता है कि extractForms और extractNewForms ब्राउज़र की ऑटोफिल लाइब्रेरी का हिस्सा हैं, और थ्रेड here बताता है कि वहां एक बग है (टिप्पणियां 12 & 15 आपकी समस्या के लिए सबसे प्रासंगिक हैं)।

जहां तक ​​मैं यह कह सकता हूं कि यह विशेष रूप से फेसबुक से भी संबंधित नहीं है: हमारे लॉग में हम अधिक iframes के लिए समान त्रुटियां देखते हैं, जिनमें से (उप) डोमेन से iframes शामिल हैं, जिन्हें हम स्वयं नियंत्रित करते हैं।

दुर्भाग्यवश मुझे किसी भी फिक्स या वर्कअराउंड के बारे में पता नहीं है, और मुझे भी संदेह है कि अगर (उपयोगकर्ता-भूमि) फिक्स/वर्कअराउंड वास्तव में संभव है। मुझे लगता है कि आप केवल एक ही चीज कर सकते हैं इन त्रुटियों को अनदेखा करना।

+0

आपके द्वारा लिंक किए गए थ्रेड के अनुसार क्रोम 59 (मई 2017) के रूप में तय किया जाना चाहिए। – felix

+2

मेरे पास मेरी वेबसाइट पर एक ही बग है। आईपैड और आईफोन के केवल उपयोगकर्ता ही इसका अनुभव करते हैं। – Stalinko

+0

इसके लिए बस त्रुटि रिपोर्ट का एक समूह था, आईओएस 10.3.1 और क्रोम 60 से आया था –

संबंधित मुद्दे