Jump to content

Recommended Posts

Xin chào các bạn :") . Hôm nay mình rảnh rối, sẽ hướng dẫn các bạn request Facebook API rất dễ dạng, bởi vì cái này nó viết cho người dùng dùng mà :") .
Chuẩn bị đồ nghề nha, tớ xài ngôn ngữ C Sharp, Idle visual studio 2017 , request bằng thư viện xNet. Để biết cách request bằng thư viện xNet, mời các bạn xem bài 

Tổng quan Graph API : là cách chính để tải dữ liệu vào hoặc lấy dữ liệu ra khỏi nền tảng Facebook. Đó là API dựa trên HTTP cấp thấp mà ứng dụng có thể sử dụng để truy vấn dữ liệu, đăng tin mới, quản lý quảng cáo, tải ảnh lên và thực hiện nhiều tác vụ khác theo lập trình. blah..blav.. lý thuyết kệ mọe nó nhé, thực hành tí là biết tuốt :") .

I. Các điều kiện cần có để có thể request được :
- Link graph của facebook : https://graph.facebook.com/v3.1/ < version của facebook thay đổi theo tùng thời kỳ.
- Các nút graph facebook, nút là cái mẹ gì thế :( .. hiểu nôm na thì nó là cái vật chủ mình muốn lấy, ví dụ như là : user id, post id, group id, comment id v.vvv...v. Cái này có thể có, có thể không có cũng được nha.
- Các cạnh của graph facebook, cạnh là clgt :/ .. hiểu nôm na thì nó là cái thử mở rộng của vật chủ như album ảnh v..v..v, ví dụ : userid/photo, userid/comments v..v..vv
- Các trường của graph facebook, trường là dài à hay là ngắn :( ..đek biết giải thích thế nào, nhưng đại loại là thông tin mà bạn cần lấy của vật chủ , ví dụ muốn lấy id và tên của userid thì ta có mẫu : userid?fields=id,name. id,name ở đây là các trường nhé.
- Cái cuối cùng và quan trọng nhất là access token, cái này lấy ở đâu nhể ???
+ Một là vào đây :

Quote

+ Hai là làm theo bài này : Hướng dẫn lấy access token Facebook dài hạn gần full quyền

II. Bắt đầu request :
- Để request, ta có mẫu link như sau, (chú ý mẫu này cần phải nhớ nha) :

Quote

https://graph.facebook.com/v3.1/ nút / cạnh(nếu có)?fields=các trường&access_token=token

- Mẫu 1 : Giờ ta vào thẳng ví dụ mẫu nhé. Muốn request thông tin của 1 ID nào đó ta có như sau :

Quote

https://graph.facebook.com/v3.1/100004347870643?fields=id,name&access_token=token

- Sử dụng method GET với link trên trong CSharp :

HttpRequest Request = new HttpRequest();
Request.UserAgent = "MeoMup";
HttpResponse Response = Request.Get("https://graph.facebook.com/v3.1/100004347870643?fields=id,name&access_token=token");
string KetQua = Response.ToString();

- Dữ liệu KetQua trả về thu được như sau :

{ "id": "548500295304895", "name": "Đỗ Thành Chung" }

- Như vậy giờ ta chỉ cần Regex thông tin ta cần là được.

- Mẫu 2 : Ta có mẫu ví dụ thứ 2 về trường hợp có thêm các cạnh graph facebook nhé. Ví dụ request feed của 1 id nào đó, ta request như sau :

Quote

- Tương tự sử dụng method GET với link trên trong CSharp :

HttpRequest Request = new HttpRequest();
Request.UserAgent = "MeoMup";
HttpResponse Response = Request.Get("https://graph.facebook.com/v3.1/100004347870643/feed?fields=id,message&access_token=token");
string KetQua = Response.ToString();

- Dữ liệu KetQua trả về thu được như sau :

{ "data": 
[
    { "id": "548500295304895_1073408016147451", "message": ":(( ..." },
    { "id": "548500295304895_1030728783748708", "message": "¿" },
    { "id": "548500295304895_1030554090432844", "message": "kiếm tiền ví momo" },
    { "id": "548500295304895_1025392767615643", "message": "ok" },
    { "id": "548500295304895_1000296853458568", "message": "vxvxvxvxvxvxc" },
    { "id": "548500295304895_976244709197116", "message": "k,jk,jk,j,j" },
    { "id": "548500295304895_971248569696730", "message": "upgrade facebook version 3.0" },
    { "id": "548500295304895_965737520247835" },
    { "id": "548500295304895_965744460247141" },
    { "id": "548500295304895_959761967512057", "message": "adfasfasd afdfaf ââafaf :v" },
    { "id": "548500295304895_953540951467492", "message": "???????" }
],
"paging":{"previous": "link","next": "link"}}

- Và giờ ta chỉ cần Regex thông tin ta cần là được.

- Mẫu 3 : Ví dụ, ta muốn viết 1 bài trên tưởng nhà của 1 user id nào đó, dựa trên mẫu link trên ta có :

Quote

- Theo như hướng dẫn của Graph Facebook, ta sử dụng method POST với Datapost là message access token , ta được như sau :

HttpRequest Rq = new HttpRequest();
Rq.UserAgent = "MeoMup";
string DataPost = "message=Xin chào&access_token=token";
HttpResponse Rs = Rq.Post("Link xem trong Header", DataPost, "content type xem trong header");
string KetQua = Rs.ToString();

- Biến Ketqua sẽ có giá trị trả về là Postid của bài viết vừa đăng :") trông nó như thế này :

{"id":"1000004347870643_12345678910111213"}

- Đại loại thế :") . Còn làm sao tớ biết các cạnh, các nút, các trường thì nó nằm ở trong hướng dẫn Graph Facebook Document này hết nhóe, các thím chịu khó tìm hiểu, vọc tiếng anh cùng với mẫu của tớ thì 1 chút là ra. Nếu có gì không hiểu, hay vẫn chưa tìm ra thì comment bên dưới, tớ hỗ trợ hoặc tìm giúp cho nha. Đây là link document của Facebook nhóe :

Quote

Thân ái, Good Luck !

 

Chia sẻ bài đăng này


Link tới bài viết
Share on other sites

Cảm ơn ad. Ad cho hỏi mình lên trang xNet thì không tìm thấy tập tin dll mà chỉ có source. Cho hỏi phải tải dll ở đâu, mình là thành viên autoit mới chuyển sang tìm hiểu C#

Chia sẻ bài đăng này


Link tới bài viết
Share on other sites
22 giờ trước, Vodanh1991 said:

Cảm ơn ad. Ad cho hỏi mình lên trang xNet thì không tìm thấy tập tin dll mà chỉ có source. Cho hỏi phải tải dll ở đâu, mình là thành viên autoit mới chuyển sang tìm hiểu C#

:a31:nhìn lại đi thím ơi ...link nằm trong bài viết hướng dẫn xnet có ngay trên đầu đoá thím

Chia sẻ bài đăng này


Link tới bài viết
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Trả lời chủ đề này...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...