2011-08-26 21 views
9

Tôi đang cố gắng tìm một cuộc gọi API (hoặc tập hợp các cuộc gọi) cho phép ứng dụng nhận các bài đăng mà bạn sẽ thấy nếu xem tường của bạn bè. Cuộc gọi REST hoặc cuộc gọi FQL sẽ thực hiện.Nhận tất cả các bài đăng trên tường của một người bạn

Tôi đã thử/nguồn cấp dữ liệu và/bài đăng, so sánh kết quả với những gì tôi thấy trên tường của bạn tôi và kết quả tôi nhận được từ đó không đầy đủ.

Tôi biết điều này là có thể vì các ứng dụng như Thân thiện có thể làm điều đó.

Bất kỳ gợi ý nào?

+1

Vì vậy, không có câu trả lời bởi vì (1) nó không thể được thực hiện, hoặc (2) không ai biết làm thế nào để làm điều đó? – undetected

+1

Tôi cũng đã cố gắng giải quyết vấn đề này mà không có may mắn ... có vẻ như tất cả các bài đăng ảnh trên tường, bài đăng liên kết và mọi thứ nhưng bài đăng trạng thái thông thường (hoặc bất kỳ thứ gì họ gọi) bị thiếu trong/feed và/posts ... Tôi thực sự đánh giá cao nếu ai đó có thể trả lời câu hỏi này. – Zharf

+0

Tôi không chắc chắn * tại sao *, nhưng có vẻ như một số bài đăng nhất định không có sẵn thông qua API.Khi bạn nói "các ứng dụng như Thân thiện có thể làm điều đó", bạn có thể xác nhận rằng các bài đăng bị thiếu trong nguồn cấp dữ liệu trong ứng dụng của bạn thực sự có sẵn trong các ứng dụng khác, chẳng hạn như Thân thiện không? – chesles

Trả lời

2

Bạn có thể tương tác với bài đăng bằng cách truy xuất read_streampublish_stream cho ID người dùng nhất định.

Khi bạn có ID của Người dùng mà bạn quan tâm, bạn có thể sử dụng FQL để truy xuất các bài đăng từ luồng mà bạn có quyền.

This stackoverflow answer đi vào chi tiết hơn và chứa thêm các liên kết đến tài liệu trên trang Facebook Developers.

+0

Câu trả lời được liên kết gợi ý truy vấn bảng "luồng" thông qua FQL. Tôi đã thử nó và nó không đầy đủ. Tôi đã thử "SELECT message FROM stream WHERE source_id = '" + friendId + "'" (kết quả không đầy đủ) và "FROM status" (trống). – undetected

+0

Do bạn chưa hoàn thành nghĩa là bạn đang nhận được một số bài đăng nhưng không phải là tất cả? Kiểm tra kỹ xem bạn có đang gửi truy vấn bằng tài khoản có quyền cho người dùng truyền không. Ngoài ra, hãy đảm bảo luồng bạn đang cố truy xuất không phải là riêng tư, Facebook ngày càng chặt chẽ hơn về quyền riêng tư trong những ngày này. – Kynth

+0

Tôi thấy rằng bài đăng ảnh trên tường, bài đăng liên kết và những bài đăng như vậy đều bị thiếu. Tôi đã sử dụng chủ yếu là đồ thị api gần đây nhưng tôi nghĩ rằng một đồng nghiệp đã cố gắng FQL và những người khác trước khi ông đi nghỉ. Tôi đã yêu cầu quyền read_stream và publish_stream khi đăng nhập. Tôi có thể xem các bài đăng đó trên facebook thông qua tài khoản của mình nhưng không phải khi tôi cố gắng đọc chúng qua API. (ahh, cuối cùng đã nhận được đặc quyền đăng bài bình luận của tôi trở lại) – Zharf

7

Vâng, có hai điểm cuối API khác nhau để truy vấn các bài đăng của một người dùng nhất định; homefeed. Trang chủ bao gồm các bài đăng từ những người và trang khác (về cơ bản những gì bạn thấy khi bạn đăng nhập và truy cập trang chủ của mình) và nguồn cấp dữ liệu là nội dung mà người dùng đang chia sẻ. Giả sử ứng dụng của bạn đã xác thực người sử dụng và họ đã cho phép sự cho phép read_stream, sau đó bạn có thể làm cho truy vấn đến các API đồ nào sử dụng mã truy cập của họ:

https://graph.facebook.com/{SOME_USER_NAME}/home?access_token={SOME_ACCESS_TOKEN} 

https://graph.facebook.com/{SOME_USER_NAME}/feed?access_token={SOME_ACCESS_TOKEN} 

Các gợi ý duy nhất tôi có thể cung cấp cho bạn là "không đầy đủ" khá chuẩn với API Facebook. Bạn chỉ có thể làm tốt nhất bạn có thể với những gì họ cung cấp cho bạn. Đếm sẽ sai. Dữ liệu sẽ sai. Đó là một mục tiêu chuyển động, biến động, vì vậy hãy viết mã cho thực tế đó.

+0

Cảm ơn bạn, tôi nghĩ rằng đây là câu trả lời hay nhất, có hay không không bị phát hiện đồng ý. – Zharf

+0

Vấn đề là/nhà cung cấp cho tôi một thông báo lỗi: "Bạn chỉ có thể truy cập kết nối \" home \ "cho người dùng hiện tại." Tôi muốn viết một ứng dụng cho phép tôi xem những gì tôi có thể nhìn thấy trên tường của bạn tôi mặc dù tôi đã đăng nhập với tư cách là tôi. – undetected

+0

Đó sẽ là/feed sau đó. – typeoneerror

0

Bạn nên thực hiện cuộc gọi đồ thị để https://graph.facebook.com/ < FBID>/trạng thái access_token = xxxxx

Đây access_token phải có sự cho phép read_stream và phép offline_access ..

+0

Tôi đã thử/trạng thái,/nguồn cấp dữ liệu và/bài đăng và tôi vẫn không thấy các mục nhập mà tôi có thể nhìn thấy khi xem trang hồ sơ của một người bạn đã đăng nhập với tư cách là chính tôi. – undetected

2

Chúng tôi làm điều đó như thế này:

1) chúng tôi sử dụng nền tảng Facebook PHP5 client

2) sau đó những gì bạn làm là:

$this->facebook = new facebook($key, $secret); 
$out = $this->facebook->api_client->call_method("facebook.stream.get", array('viewer_id'=>0, 'source_ids'=>$uid, 'limit'=>$limit)); 

sau đó chỉ hoạt động khi không sử dụng, chứa tất cả các bài đăng trên trang được yêu cầu.

nhưng, afaik, nó sẽ chỉ hoạt động với các trang chứ không phải với người dùng thông thường. nhưng hãy đào theo cách đó để nhận câu trả lời.

+0

Cảm ơn bạn đã chia sẻ, nhưng tôi đang cố gắng xem các mục nhập sẽ xem nếu họ đã xem trang hồ sơ của một người bạn. – undetected

Các vấn đề liên quan