グラフ検索で返された投稿IDが与えられているとします。例:186173001411937Facebookの公開グラフ投稿へのURLは何ですか?
ここにはFacebookのポストにリンクするURLはありますか? 次のURLは動作しません: http://www.facebook.com/post.php?id=186173001411937
グラフ検索で返された投稿IDが与えられているとします。例:186173001411937Facebookの公開グラフ投稿へのURLは何ですか?
ここにはFacebookのポストにリンクするURLはありますか? 次のURLは動作しません: http://www.facebook.com/post.php?id=186173001411937
私は1099696306_140549259338782リンクグラフIDについて、分かった。このように構築さ:正直なところ http://www.facebook.com/1099696306/posts/140549259338782
、私はこれを行うために見つけた最も簡単な方法はただであります:postId
ポスト(186173001411937)のちょうどまっすぐID、ないuserid_postid変異体である
"http://www.facebook.com/" + postId
。
グラフapi v2.5では、postsオブジェクトのpermalink_urlフィールドを使用できます。
すなわち:
www.facebook.com/v2.5/{pagename}/?fields=posts{permalink_url,message,story,created_time,id}
同上がFacebook Graph API例えばから返さ取る公共見開きページのポストに関しては
"posts": {
"data": [
{
"permalink_url": "https://www.facebook.com/etsmtl/posts/10153868925494376",
"message": "Le Club Cedille organise le prochain Linux-Meetup ce soir à l'ÉTS. Au programme : conférence de James Shubin, ingénieur logiciel sénior chez Red Hat.",
"created_time": "2016-03-01T15:23:11+0000",
"id": "8632204375_10153868925494376"
}, ... }
Cool。 Facebookのドキュメントにはそれに関する参考資料はありますか? – user1105951
これは最高の答えと思われます。しかし、私が知っている限り、それはドキュメントにありません。このバグレポート:https://developers.facebook.com/bugs/683573291807160/ Facebookのエンジニアは、変更された場合は変更ログになると言いました。 – Joel
を返します。 12345678_12345678に追加し、facebook.comに追加してください。 https://www.facebook.com/12345678_12345678。投稿にはが表示され、ページにアクセスするとと表示されます。
素晴らしい、デッドシンプルなソリューション。どうもありがとうございました。 Facebookは、世界中のユーザーがAPIを使用することを期待すれば、APIを文書化してより良い仕事をする必要があります。 –
public <T>getPagePosts(string pageId, string access_token, int limit)
{
var client = new RestClient("https://graph.facebook.com");
var request = new RestRequest(Method.GET);
var fields = "posts{permalink_url,picture,message,story,created_time,id}";
request.Resource = "{version}/{object_id}/";
request.RequestFormat = DataFormat.Json;
request.JsonSerializer.ContentType = "application/json;";
request.AddParameter("access_token", access_token);
request.AddParameter("version", "v2.10", ParameterType.UrlSegment);
request.AddParameter("object_id", pageId, ParameterType.UrlSegment);
request.AddParameter("limit", limit);
request.AddParameter("fields", fields);
var response = client.Execute(request);
var result = JsonConvert.DeserializeObject<T>(response.Content);
return result;
}
この質問に回答してください。 –
どうすればいいですか? – corrego
@corregoあなたは、答えの横にある上下のボタンのすぐ下にあるチェックマークをクリックします。 – Scott