2011-12-20 18 views
11

के लिए फोटो अपलोड करें मैं पिछली सृजन तिथि के साथ कुछ पुरानी तस्वीरों को अपलोड करने का प्रयास कर रहा हूं ताकि वे समयरेखा में ठीक से दिखाई दें। मौजूदा api केवल संदेश और स्रोत को पास करने की अनुमति देता है।पिछली तारीख

यानी

POST https://graph.facebook.com/ALBUM_ID/photos?access_token=xyz 
    ..multipart.form.data.with.message.and.source.. 

एक ही रास्ता मैं तस्वीरें अपलोड कर सकते है।

POST https://graph.facebook.com/PHOTO_ID?access_token=xyz 
    created_time=2010-01-20T09:04Z&updated_time=2010-01-20T09:04Z 

फोटो तिथि को स्थानांतरित नहीं करता है।

मैंने /feed एपीआई का उपयोग कर फोटो अपलोड से एक पोस्ट बनाने का प्रयास किया, लेकिन यह मुझे एक मौजूदा फोटो को एक पोस्ट बनाने की अनुमति नहीं देता है। यह इसे एक प्रकार का लिंक बनाता है।

क्या मैं वास्तव में निम्नलिखित एक तस्वीर वस्तु बनाने और प्रकाशित करना चाहते हैं:

{ 
    "id": "xx_yy", 
    "from": { 
     "name": "My Name", 
     "id": "myfbid" 
    }, 
    "story": "<My Name> added a new photo.", 
    "picture": "<PhotoJPEG>", 
    "link": "<FBPhoto_URL>", 
    "name": "Photo Name", 
    "icon": "https://s-static.ak.facebook.com/rsrc.php/v1/yz/r/StEh3RhPvjk.gif", 
    "actions": [ 
     { 
      "name": "Comment", 
      "link": "https://www.facebook.com/xxx/posts/yy" 
     }, 
     { 
      "name": "Like", 
      "link": "https://www.facebook.com/xx/posts/yy" 
     } 
    ], 
    "privacy": { 
     "description": "Group", 
     "value": "CUSTOM", 
     "friends": "SOME_FRIENDS", 
     "allow": "<GROUPID>" 
    }, 
    "place": { 
     "id": "<placeid>", 
     "name": "<PlaceName>" 
    }, 
    "type": "photo", 
    "object_id": "12345", 
    "created_time": "2010-09-20T13:37:54+0000", 
    "updated_time": "2010-09-20T13:37:54+0000", 
    "comments": { 
     "count": 0 
    } 
    } 
+3

क्या इसके लायक है के लिए, मैं दिसंबर 7 फेसबुक पर निक फेल्टन साथ बात की और उन्होंने कहा कि इस API के साथ संभव नहीं था, लेकिन जल्द ही किया जाएगा। मैं भी पुरानी तस्वीरों को जोड़ने की उम्मीद कर रहा हूं! –

+0

मुझे लगता है कि टाइमलाइन सुविधा अब उपयोगकर्ता केंद्रित सुविधा थी और यह डेवलपर्स के लिए अभी तक उपलब्ध नहीं है .. यहां तक ​​कि उपयोगकर्ताओं के लिए भी समयरेखा सुविधा सभी के लिए उपलब्ध नहीं है ... इसलिए जब हर चीज गलत होती है, तो मुझे उम्मीद है कि फेसबुक एक साथ आएगा एपीआई – Vijay

उत्तर

8

मैं एफबी में एक अभियंता हूं, लेकिन प्लेटफार्म टीम पर नहीं, इसलिए मैं इस पर 100% अद्यतित नहीं हूं। ग्राफ़ एपीआई में फोटो अपलोडर पर उपलब्ध एक अनियंत्रित फ़ील्ड 'backdated_time' है। मुझे लगता है कि यह सुपरन्यू है और अगले कुछ हफ्तों में डॉक किया जाएगा, लेकिन अंतरिम में कोशिश करने के लिए स्वतंत्र महसूस करें (और यहां वापस रिपोर्ट करें!)।

यह इसे देखकर एक आईएसओ -8601 टाइमस्टैंप लेता है।

डॉक्स टीम का पता लगाने के लिए पीछा किया गया है कि क्या हो रहा है।

इसके अलावा, डीएमसीएस बिल्कुल सही नहीं है। एफबी इंजीनियर्स (विशेष रूप से हमारे डेवलपर सपोर्ट टीम में) को प्रश्नों के साथ मदद करने के लिए यहां बाहर रहने के लिए प्रोत्साहित किया जाता है, और प्रत्येक सप्ताह हमारे डेवलपर ब्लॉग पर हम पोस्ट करते हैं कि कितने प्रश्न पूछे गए थे और कितने उत्तर दिए गए थे। इसलिए SO उत्तर पर प्रश्न प्राप्त करने की प्रतिबद्धता है - उदाहरण के रूप में https://developers.facebook.com/blog/post/625/ देखें।

हालांकि, मौजूदा सुविधाओं और बग/नई सुविधाओं के लिए अनुरोधों के समर्थन में अंतर है। यदि आपके पास कोई बग या सुविधा अनुरोध है, तो इसे http://developers.facebook.com/bugs पर जोड़ें।

धन्यवाद!

+0

पर सबमिट करने की आवश्यकता होगी, मैंने कोशिश की, यह काम करता है! धन्यवाद! मेरे उत्तर में उदाहरण उदाहरण कोड। और ..... क्या आप जानते हैं कि स्थान के लिए एक समान क्षेत्र है या नहीं? मैंने कुछ अनुमानों की कोशिश की है (उदा। "स्थान") लेकिन कुछ भी काम नहीं किया है। –

+1

यदि स्थान पहले से ही ग्राफ़ में एक स्थान है तो 'place' और स्थान पृष्ठ का यूआईडी शायद – mrtom

+0

काम करेगा यह काम करता है! धन्यवाद :) – Alagu

1

मैं कैसे नई समय रेखा है साथ ग्रहण करेंगे, कि यह एक फेसबुक बग या किसी एन्हांसमेंट के लिए बनाया जा करने की जरूरत है एपीआई। क्या आपने इसे फेसबुक पर सबमिट किया है?

+0

के माध्यम से इन चीजों को संभालने का विकल्प मैंने इसे फेसबुक पर सबमिट नहीं किया है, लेकिन मैंने सोचा कि facebook.stackoverflow.com एफबी लोगों से बात करने का तरीका था। (https://developers.facebook.com/blog/post/545/) – Alagu

+0

नहीं, यहां केवल साथी प्रोग्रामर। आपको अपनी खुद की बग https://developers.facebook.com/bugs – DMCS

0

निम्नलिखित कोड काम करता है। (mrtom's undocumented field साथ this FB example कोड संयोजित।)

<?php 

$app_id = "YOUR_APP_ID"; 
$app_secret = "YOUR_APP_SECRET"; 
$post_login_url = "YOUR_POST_LOGIN_URL"; // should be the URL of this script 

$code = $_REQUEST["code"]; 

//Obtain the access_token with publish_stream permission 
if(empty($code)) { 
    $dialog_url= "http://www.facebook.com/dialog/oauth?" 
    . "client_id=" . $app_id 
    . "&redirect_uri=" . urlencode($post_login_url) 
    . "&scope=publish_stream"; 
    echo("<script>top.location.href='" . $dialog_url 
    . "'</script>"); 
} 
else { 

    $token_url="https://graph.facebook.com/oauth/access_token?" 
    . "client_id=" . $app_id 
. "&redirect_uri=" . urlencode($post_login_url) 
    . "&client_secret=" . $app_secret 
    . "&code=" . $code; 
    $response = file_get_contents($token_url); 
    $params = null; 
    parse_str($response, $params); 
    $access_token = $params['access_token']; 

// Show photo upload form to user and post to the Graph URL 
$graph_url= "https://graph.facebook.com/me/photos?" 
. "access_token=" .$access_token; 

echo '<html><body>'; 
echo '<form enctype="multipart/form-data" action="' 
.$graph_url .' "method="POST">'; 
echo 'Please choose a photo: '; 
echo '<input name="source" type="file"><br/><br/>'; 
echo 'Say something about this photo: '; 
echo '<input name="message" 
    type="text" value=""><br/><br/>'; 
echo 'ISO Date for this photo: '; 
echo '<input name="backdated_time" 
    type="text" value=""><br/><br/>'; 

echo '<input type="submit" value="Upload"/><br/>'; 
echo '</form>'; 
echo '</body></html>'; 
} 

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