2013-01-25 40 views
8

में सफेद पृष्ठ के साथ एफबी रीडायरेक्ट समस्या जब मैं लॉगिन बटन दबाता हूं तो मुझे फेसबुक पेज मिलता है जहां मुझे अपने फेसबुक खाते का उपयोग करने की अनुमति देना पड़ता है।आईओएस क्रोम

अनुमति देने के बाद, यह https://www.facebook.com/dialog/permissions.request पर रीडायरेक्ट करता है और एक खाली पृष्ठ दिखाया जाता है। एंड्रॉइड पर "window.FB.login" कॉलबैक को कॉल किया जाता है (नीचे कोड देखें) जहां मैं जानकारी प्राप्त कर सकता हूं और उपयोगकर्ता को रीडायरेक्ट कर सकता हूं लेकिन विंडोज फोन पर यह केवल खाली पृष्ठ दिखाता है। जब मैं अपने फेसबुक पेज पर जाता हूं, तो मेरी साइट ऐप सूची में पंजीकृत होती है। तो पंजीकरण सही ढंग से काम किया था।

उत्तर

4

यह त्रुटि फेसबुक जेएस फ़ाइल की असुरक्षित लोडिंग के कारण हुई है।

अपने आवेदन में फेसबुक ऐप को एकीकृत करने के लिए आपको फेसबुक ऐप दस्तावेज़ों में निर्देशित चरणों का पालन करना होगा।

var fbApi = { 
     init: function() { 
     $.getScript(document.location.protocol + '//connect.facebook.net/en_US/all.js', function() { 
     if (window.FB) { 
      window.FB.init({ 
       appId: MY_APP_ID, 
       status: true, 
       cookie: true, 
       xfbml: false, 
       oauth: true, 
       channelUrl: 'http://www.yourdomain.com/channel.html' 
      }); 

     } 
    }); 
    }, 
    login: function() { 
    /// <summary> 
    /// Login facebook button clicked 
    /// </summary> 
    log("login facebook button clicked"); 

    if (window.FB) { 

     //Windows phone does not enter this method, Android and Iphone do 
     window.FB.login(function (response) { 

      if (response.status) { 
       log('it means the user has allowed to communicate with facebook'); 

       fbAccessToken = response.authResponse.accessToken; 
       window.FB.api('/me', function (response) { 
        //get information of the facebook user. 
        loginService.subscribeSocialUser(response.id, response.first_name, response.last_name, fbAccessToken, "", "FaceBook", fbSucces, fbFail); 

       }); 
      } else { 
       log('User cancelled login or did not fully authorize.'); 

      } 
     }, 
     { scope: 'email' 
     }); 
    } 

} 
}; 

चैनल यूआरएल जोड़ा गया है ताकि किसी भी क्रॉस ब्राउज़र के मुद्दों को हल किया जा सके। यह एक html फ़ाइल के रूप में निम्नानुसार जो js को संदर्भित करता है को इंगित करना चाहिए:

<script src="//connect.facebook.net/en_US/all.js"></script> 

तो एक बार Facebook.js आरंभ करते समय कोई त्रुटि मारा गया है, आप नहीं सफलतापूर्वक प्रवेश कर सकेंगे।

आप जावा स्क्रिप्ट को सिंक्रनाइज़ या असीमित रूप से लोड कर सकते हैं।

(function(d, debug){ 
    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" + (debug ? "/debug" : "") + ".js"; 
    ref.parentNode.insertBefore(js, ref); 
    }(document, /*debug*/ false)); 
+0

धन्यवाद। मैंने एफबी के लिए PHP रीडायरेक्ट विकल्प का उपयोग करके कार्यान्वित किया है। –