2011-01-18 35 views

Trả lời

46

tôi phát hiện ra, đối với một id graph 1099696306_140549259338782 các liên kết được xây dựng như thế này: http://www.facebook.com/1099696306/posts/140549259338782

+3

Bạn nên đánh dấu câu hỏi này là đã trả lời rồi .. –

+1

làm cách nào để tôi làm điều đó? – corrego

+0

@corrego bạn nhấp vào dấu kiểm ngay bên dưới các nút lên/xuống bên cạnh câu trả lời. – Scott

21

Thành thực mà nói, cách đơn giản nhất tôi đã tìm thấy để làm điều này chỉ là :

"http://www.facebook.com/" + postId 

Trường hợp postId chỉ là id thẳng của bài đăng (186173001411937), không phải biến thể userid_postid.

+1

Điều này sẽ không hoạt động đối với người dùng đăng trên các trang, giải pháp của @ user580602 tuy nhiên bao gồm trường hợp này. – frame

+0

Người dùng phải đăng nhập để xem bài đăng này, liệu công chúng có thể xem bài đăng này không? – Noitidart

+0

Điều này không hoạt động trong mọi trường hợp. Đối với tôi nó không thành công phần lớn thời gian sử dụng trường 'permalink_url' thay vì – Joel

4

với biểu đồ api v2.5, bạn có thể sử dụng trường permalink_url của đối tượng bài đăng.

tức là .:

www.facebook.com/v2.5/{pagename}/?fields=posts{permalink_url,message,story,created_time,id} 

sẽ trở lại

"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" 
    }, ... } 
+0

Tuyệt. Có tài liệu tham khảo cho nó trong tài liệu facebook? – user1105951

+0

Điều này có vẻ là câu trả lời hay nhất; tuy nhiên, theo như tôi biết nó không có trong tài liệu. Trong báo cáo lỗi này: https://developers.facebook.com/bugs/683573291807160/ kỹ sư Facebook cho biết đó sẽ là nhật ký thay đổi nếu nó được thay đổi. – Joel

2

Liên quan đến một bài trang công khai lấy Id trở về từ các Facebook Graph API ví dụ 12345678_12345678 và nối thêm vào facebook.com ví dụ: https://www.facebook.com/12345678_12345678. Bài đăng cũng được đánh dấu khi bạn truy cập trang.

+0

Giải pháp tuyệt vời, đơn giản. Cảm ơn nhiều. Facebook cần phải làm tốt hơn việc ghi lại các API của họ nếu họ mong đợi thế giới sử dụng chúng. –

0
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; 
     } 
Các vấn đề liên quan