2010-06-30 112 views
3

我正在使用ASIHTTPRequest在Facebook圖形API上工作。從iPhone應用程序發佈Facebook上的'feed'圖片

這是最近我已經去張貼圖片上的飼料。所以,如果我有一個

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 

URL是https://graph.facebook.com/me/feed

我們發佈圖片我做到以下幾點:

[request setPostValue:@"My Message" forKey:@"message"]; 

[request setPostValue:@"somepic.png" forKey:@"picture"]; 

[request setPostValue:@"Some Name" forKey:@"name"]; 

[request setPostValue:@"Some description" forKey:@"description]; 

[request startAsynchronous]; 

如果你試試這個,然後一切正常以外的畫面是發佈。圖片的空白佔位符顯示在Feed上。

回答

1

我發現在facebook此文檔:http://developers.facebook.com/docs/reference/api/post

根據這個文件,我們不能張貼圖片使用API​​駐留我們的機器上。相反,我們必須上傳圖片,然後提供發佈到Feed的鏈接。

但是,如果您登錄到facebook.com,則允許將圖像上傳到牆上。我相信這個功能並沒有在圖表api中提供。

4

只要使用這個小片段到磁盤上上傳的圖像作爲原始數據

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
[request setData:UIImageJPEGRepresentation(img.image, 0.1) withFileName:filename andContentType:@"image/jpeg" forKey:@"photo"]; 
+0

太棒了,對我來說是完美的解決方案。 – youshunei 2012-01-09 15:41:02

+0

@youshunei,什麼對你有用?您是否設法直接從設備上共享圖像,而無需首先將其上傳到服務器? – 2012-01-11 12:48:15

+0

@YogevShelly,這是錯誤的,它是上傳到Facebook相冊的簡單方法,無法發佈鏈接,描述,只需一次點擊提交。您仍然首先將照片上傳到相冊,然後發佈包含完整信息的Feed。 – youshunei 2012-01-12 14:19:51

0

這可能是值得考慮看看ShareKit - http://www.getsharekit.com/

他們的演示應用發佈在Facebook上的照片牆成功。我相信他們會在他們的代碼中包裝上傳 - 然後發佈過程。

HTH, Oded

相關問題