2010-08-06 39 views
0

我試圖發佈到另一個用戶牆,所以它會顯示好像他自己發佈了這篇文章。例如,我想在他的牆上寫下「我在Youngo.com上發佈了一篇新文章」。使用Javascript和Facebook圖形API

我有離線訪問和流發佈權限。我也有訪問令牌。我只是不知道如何使用JavaScript來做到這一點。

回答

-1

如果您試圖直接從JavaScript發佈到FB的API,它將無法工作。由於JavaScript不允許跨域請求,因此您必須將自己的api與自己的域上的Web服務一起打包。

+0

我可以發佈到自己的流或讓我的網站發佈到當前用戶的會話(只要他給了正確的權限......)那麼,爲什麼我無法代表其他用戶發佈如果我有他的訪問令牌? – 2010-08-06 20:41:13

+0

JSON-P可以在任何地方啓用跨域請求。現代瀏覽器(IE8 +,FF3,Chrome,Safari)也可以實現這一功能。 Flash也有幫助。 – daaku 2010-08-06 23:50:57

+0

當JavaScript從外部調用所在的同一個域(通過JavaScript)加載時,我不認爲需要JSONP。 – Anurag 2010-08-07 16:25:22

1

你的意思是這樣的:

var wallPost = { 
    access_token: "<ACCESS_TOKEN>", 
    message: 'Hello, World!' 
}; 

FB.api('/<UID>/feed', 'post', wallPost, function(response) { 
    if (!response || response.error) { 
     alert('Error occurred'); 
    } else { 
     alert('Success!'); 
    } 
}); 
+0

是的,但是當我嘗試這個時,我收到了'錯誤發生'的消息 – 2010-08-06 21:01:43

+0

@Omri你準確得到了什麼錯誤?將響應轉儲到螢火蟲控制檯中。 – serg 2010-08-06 21:17:16

+0

當令牌是我的,UID是「我」時 - 這是有效的。 但是,如果我將令牌和UID更改爲另一個用戶,它會向我發出錯誤提醒。我可以使用什麼來查看完整的錯誤細節? – 2010-08-06 21:35:51