2013-02-18 17 views
7

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

"{ 
    "error": { 
     "message": "(#100) Missing message or attachment", 
     "type": "OAuthException", 
     "code": 100 
    } 
}" 

किसी को भी मुझे बता सकते हैं क्या मैं गलत कर रहा हूँ?

var opts = { 
       message : 'Some message', 
       name : 'Post Name', 
       link : 'url', 
       description : 'The post Description', 
       picture : 'url to image' 
      }; 

FB.api('/', 'POST', { 
     batch: [ 
       { method: 'GET', relative_url: 'me/friends'}, 
       { method: "POST",relative_url: "me/feed", body : opts } 
     ] 
     }, function (response) { 
       console.log(response); 
     }); 
+0

मुझे लगता है कि एफबी ग्राफ एपीआई के कुछ हिस्सों का उपयोग/एक्सेस करते समय आपको किसी भी तरीके से अपने अनुरोध को प्रमाणित करने की आवश्यकता है। OAuthException एक प्राधिकरण त्रुटि इंगित करता प्रतीत होता है। – kjetilh

+0

पहला अनुरोध बिना किसी त्रुटि के चला जाता है, दूसरा अनुरोध त्रुटि प्राप्त करता है..मैं इसे अलग एपीआई अनुरोध में भी करता हूं, यह एफबी.एपीआई ('/ me/feed', 'post', opts, function (प्रतिक्रिया) { अगर (प्रतिक्रिया || response.error) { } else { } !}); –

+0

समस्या और समाधान मिला: शरीर के क्षेत्र। इसे एक कच्चे HTTP पोस्ट बॉडी स्ट्रिंग के रूप में स्वरूपित किया जाना चाहिए, एक यूआरएल क्वेरी स्ट्रिंग के समान https://github.com/jgorset/facepy/issues/55 –

उत्तर

12

तरह शेरोन ने कहा, यदि आप एक यूआरएल इनकोडिंग तरह से शरीर क्षेत्र रखना होगा:

यहाँ कोड मैं का उपयोग करें।

आप इसे jQuery के साथ सरल, की तरह कर सकते हैं:

var opts = { 
       message : 'Some message', 
       name : 'Post Name', 
       link : 'url', 
       description : 'The post Description', 
       picture : 'url to image' 
      }; 

FB.api('/', 'POST', { 
     batch: [ 
       { method: 'GET', relative_url: 'me/friends'}, 
       { method: "POST",relative_url: "me/feed", body : $.param(opts) } 
     ] 
     }, function (response) { 
       console.log(response); 
     }); 

वर्क्स अच्छा।

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