2013-03-09 118 views
0

我有一個使用JavaScript Facebook-SDK的移動Web應用程序。該Web應用程序通過HTTP運行。要加載初始化SDK我已經使用瞭如何從JavaScript Facebook-SDK How-ToFacebook Javascript SDK產生SSL錯誤

現在的問題是,我有時會得到警告「加載資源失敗:出現SSL錯誤,並且無法建立與服務器的安全連接「。此外,還有一個名爲「https://s-static.ak.facebook.com/connect/xd_arbiter.php?」的網址。「

此問題僅在有時發生,並且導致我iPhone上的Alert-Box出現」[App-Name]「無法打開,因爲它無法建立與服務器的安全連接。「,當我從主屏幕啓動webapp時。

有人知道我爲什麼會得到這個錯誤嗎?

供我參考我的代碼來加載和初始化SDK。

window.fbAsyncInit = function() { 
          FB._https = false; 
          FB.init({ 
           appId  : '[my app id]', // App ID 
           status  : true, // check login status 
           cookie  : true, // enable cookies to allow the server to access the session 
           xfbml  : true // parse XFBML 
          }); 
          FB.Event.subscribe('auth.statusChange', handleStatusChange); 
          }; 

          // Load the SDK Asynchronously 
          (function(d){ 
          var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; 
          if (d.getElementById(id)) {return;} 
          js = d.createElement('script'); js.id = id; js.async = true; 
          js.src = "//connect.facebook.net/en_US/all.js"; 
          ref.parentNode.insertBefore(js, ref); 
          }(document)); 
+0

這裏有一個簡單的搜索: http://stackoverflow.com/q/5212016/910325 – Roni 2013-03-09 17:26:32

+0

我以前看過這篇文章,但添加了FB._https = true;或FB._https = false;沒有效果。錯誤仍然發生。 – user1970295 2013-03-09 17:27:52

+0

你可以嘗試強制https協議,通過替換: 'js.src =「//connect.facebook.net/en_US/all.js」;'與 'js.src =「https:// connect .facebook.net/en_US/all.js「;' – Roni 2013-03-09 17:30:26

回答

0

你在FB的應用程序設置中提到了一個正確的url,它說,一旦你必須把http url作爲https?

+0

「移動站點URL」和「站點URL」設置爲「http:// localhost:8080/[我的應用URI]」,或者你的意思是什麼? – user1970295 2013-03-09 17:32:57

+0

我的意思是,您是否在fb應用程序設置中正確提及了畫布網址以及安全的畫布網址。 – Ani 2013-03-09 17:39:19