2011-02-13 10 views
8

क्या मुझे उपयोगकर्ता के पहले नाम में वर्तमान लॉग इन करने के लिए FB.api के माध्यम से एक ग्राफ एपीआई कॉल करना है? या, क्या कोई आसान/तेज़ तरीका है?फेसबुक जेएस एसडीके वर्तमान उपयोगकर्ता का पहला नाम कैसे प्राप्त करें?

उत्तर

1

हां आपको एपीआई कॉल का उपयोग करना होगा, क्योंकि यह एक्सेस टोकन या किसी अन्य एप्लिकेशन को पास की गई किसी अन्य जानकारी में एन्कोड नहीं किया गया है।

यदि चिंता प्रदर्शन है, तो आप निश्चित रूप से परिणाम कैश कर सकते हैं।

+0

मैं इसे कैश कहां दूंगा? स्थानीय भंडार? – ma11hew28

+0

'' 'window.localStorage.setItem ('facebook', JSON.stringify (प्रतिक्रिया));' '' – Alastair

0

User पहला नाम प्राप्त करने के लिए ग्राफ एपीआई कॉल को कॉल करना अच्छा है। उपयोगकर्ता का पहला नाम प्राप्त करने के लिए आप क्वेरी User तालिका भी कर सकते हैं। यह आप पर निर्भर करता है कि आपको क्या पसंद है?

1

आप के रूप में आप सभी की जरूरत है कि

function fqlQuery(){ 
     FB.api('/me', function(response) { 
       var query = FB.Data.query('select name,email,hometown_location, sex, pic_square from user where uid={0}', response.id); 
       query.wait(function(rows) { 
       uid = rows[0].uid; 
       document.getElementById('name').innerHTML = 
        'Your name: ' + rows[0].name + "<br />" + 
        'Your email: ' + rows[0].email + "<br />" + 
        'Your hometown_location: ' + rows[0].hometown_location + "<br />" + 
        'Your sex: ' + rows[0].sex + "<br />" + 
        'Your uid: ' + rows[0].uid + "<br />" + 
        '<img src="' + rows[0].pic_square + '" alt="" />' + "<br />"; 
       }); 
     }); 
    } 
11
FB.api('/me', function(response) { 
    $('#name').html("Welcome " + response.name); 
}); 

इस प्रकार FB.api उपयोग कर सकते हैं।

+6

यदि आप पहला नाम चाहते हैं, तो यह 'respond.first_name' होना चाहिए, न कि' respond.name' –

+3

@ सुपर Chafouin धन्यवाद लेकिन प्रतिक्रिया। First_name अपरिभाषित दिया गया। –

0

जावास्क्रिप्ट एसडीके जो फेसबुक आपको पहला नाम, अंतिम नाम (जिसे विशेष अनुमति की आवश्यकता नहीं है), शैक्षिक इतिहास और फेसबुक उपयोगकर्ता प्रोफ़ाइल के बहुत कुछ प्राप्त करने की अनुमति देता है। लेकिन, 'संवेदनशील' जानकारी प्राप्त करने के लिए उपयोगकर्ता को आपके ऐप को स्वीकृति देना है (यदि वे पहले से नहीं हैं) और फिर शैक्षिक इतिहास जैसी 'संवेदनशील' जानकारी को स्वीकृति दें। http://www.virtualsecrets.com/facebook-user-data-on-webpage-form.html पर पृष्ठ जावास्क्रिप्ट एसडीके के साथ काम करने की पूरी प्रक्रिया और वेबपृष्ठों के साथ ऐप्स को सेट अप करने के बारे में कुछ जानकारी दिखाता है।

2

गुण प्रथम नाम और अंतिम नाम अब एफबी जेएस एसडीके एपीआई लॉगिन अनुरोध द्वारा वापस नहीं लौटाए जाते हैं। यह कुछ समय के बीच बदल गया। 2.2 (06/2014) और 2.5 (01/2015)।

कारण पीछे है, कि लॉगिन अनुरोध केवल सार्वजनिक रूप से उपलब्ध गुण है, जो है fbid और नाम देता है। प्रथम नाम और अंतिम नाम सार्वजनिक रूप से सुलभ विशेषताओं नहीं हैं और उपयोगकर्ता द्वारा दी गई अनुमतियों की आवश्यकता होती है। See here

हम एक "अनुमान वैकल्पिक हल" का उपयोग करें - अगर विशेषता नाम 1 से अधिक शब्द है, हम उन्हें firstname और उपनाम विशेषताओं में विभाजित, या नाम से firstname पॉप्युलेट। अनुमतियों, प्रतिक्रिया जांच, कॉलबैक इत्यादि वाले उपयोगकर्ताओं को परेशान करने से कुछ स्थितियों में यह बेहतर/आसान है ..

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