I. Giới thiệu

1. Facebook Graph API là gì

1.1. Định nghĩa về API

Trước tiên để hiểu Facebook API là gì thì ta cũng cần được hiểu về định nghĩa API. API (Application Programming Interface) là giao diện lập trình ứng dụng, nó là thủ tục để liên kết với các thư viện và ứng dụng khác. Window, Google, Twitter... đều phải có API riêng. Với API này ta rất có thể tạo ra các ứng dụng bằng cách sử dụng hào kiệt hoặc tài liệu hiện gồm trên sever của họ.Bạn sẽ xem: Graph.facebook.com là gì

1.2. Định nghĩa về Facebook API

Facebook API là gốc rễ do Facebook cung cấp cho tất cả những người viết vận dụng để thuận lợi trong việc tạo ứng dụng và bảo vệ người viết áp dụng không can thiệp vượt sâu vào khối hệ thống của Facebook.

Bạn đang xem: Graph.facebook.com là gì

Thông qua Facebook API, ta hoàn toàn có thể lấy được thông tin về người tiêu dùng như là list bạn bè, tin tức cá nhân, hình ảnh profile.... Nếu như như họ cấp cho quyền cho ta truy vấn trang cá thể của họ.

Facebook đang gửi một cách tiến hành POST đến sever Facebook API. Nó gồm 1 số các thông số yêu cầu như api_key của ứng dụng, session_key của người dùng đưa ra yêu thương cầu. Ngoài ra Facebook còn thêm vào tham số fb_sig để thông tin ứng dụng giới thiệu yêu cầu. Bằng cách này toàn bộ các lời hotline API sẽ được đảm bảo, Facebook hoàn toàn có thể xác minh những yêu ước được gửi từ 1 ứng dụng đã có chấp thuận.

1.3. Định nghĩa về Facebook Graph API

Graph làm việc đây chính là đồ thị. Graph hiện ra để miêu tả quan hệ giữa các thực thể.

*

Facebook coi những mối quan liêu giữa các thực thể như là một trong "Đồ thị xóm hội" (Social Graph).

Facebook Graph API là cách đa số để tải tài liệu vào và lấy tài liệu ra từ thứ thị xóm hội của Facebook. Đó là 1 HTTP API thấp cấp mà chúng ta cũng có thể sử dụng nhằm truy vấn dữ liệu, post status, thiết lập lên hình hình ảnh và một loạt các nhiệm vụ khác.

2. Cấu tạo Facebook Graph API

Graph API chọn cái tên theo ý tưởng "đồ thị làng hội" - đại diện cho những thông tin trên Facebook. Nó bao gồm:

nodes (nút): là các đối tượng người tiêu dùng riêng như thể người dùng, ảnh, trang cá nhân, bình luận...edges (cạnh): là các kết nối thân những đối tượng riêng ngơi nghỉ trên, lấy một ví dụ như kết nối hình ảnh và trang chứa hình hình ảnh đó, bình luận và bức ảnh được bình luận...fields (trường): dữ liệu của đối tượng người tiêu dùng riêng nghỉ ngơi trên, ví dụ như tên, ngày sinh của tín đồ dùng, thương hiệu trang...

Vì vậy mà họ sử dụng Graph API là để:

Sử dụng nodes để đưa dữ liệu về đối tượng cụ thể.Sử dụng edgesđể lấy tập phù hợp các đối tượng người sử dụng khác được liên kết với node.Sử dụng fileds để chỉ định dữ liệu mà bạn muốn có trong ý kiến từ Facebook.

2.1.HTTP

Graph API dựa trên HTTP đề nghị API này chuyển động với bất kể ngôn ngữ nào tất cả thư viện HTTP, chẳng hạn như cURL và urllib. Chúng ta có thể sử dụng Graph API ngay lập tức trong trình để ý của mình.

Ví dụ: https://graph.facebook.com/facebook/picture?redirect=false tương đương với thực hiện yêu mong cURL sau:

curl -i -X GET "https://graph.facebook.com/facebook/picture?redirect=false&access_token=valid-access-token-goes-here"

2.2. Access token (mã truy tìm cập)

Bạn hoàn toàn có thể nhận thấy thông số access_token trong yêu ước ở URL trên. Số đông các yêu mong của Graph API phần nhiều yêu cầu access token và phương pháp dễ nhất để lấy access token là bắt người tiêu dùng đăng nhập Facebook từ áp dụng của bạn.

2.3. URL lưu lại trữ

2.4. Objects ID

Mỗi node gồm một ID độc nhất để truy vấn thông qua Graph API. Để có thông tin về node, bạn phải truy hỏi vấn trực tiếp nối ID của node đó.

GETgraph.facebook.com /node-idNếu mong muốn lấy dữ liệu cụ thể (fields) về một node, chúng ta cũng có thể thêm tham số fields và hướng dẫn và chỉ định trường mà mình muốn có trong bình luận trả về. Chẳng hạn bạn muốn lấy e-mail của một đối tượng (node) thì bạn phải truy vấn như sau:

GETgraph.facebook.com /node-id?fields=emailHầu hết những node đều phải sở hữu edges (cạnh). Nó có thể trả về tập hợp các đối tượng người sử dụng được kết nối với node đó. Để truy vấn vấn một cạnh, chúng ta cũng có thể sử dụng cả ID node cùng tên cạnh. Ví dụ bạn có nhu cầu truy vấn cạnh photos của node:

GETgraph.facebook.com/node-id/photosMột số node có thể chấp nhận được bạn update trường bằng thao tác làm việc POST. Ví dụ nếu như khách hàng là admin của trang Facebook, bạn cũng có thể cập nhật ngôi trường descriptions như sau:

POSTgraph.facebook.com /node-id?description=hahaBạn cũng có thể xóa 1 node bằng cách thực hiện thao tác DELETE bên trên ID node:

DELETEgraph.facebook.com/node-idII. Hướng dẫn áp dụng Graph APIĐầu tiên, các bạn hãy truy cập vào trang dành cho những người phát triển: https://developers.facebook.com/

Nếu bạn chưa có ứng dụng trên Facebook thì hoàn toàn có thể search bí quyết tạo áp dụng nhé.

Đi tới Graph API Explorer bằng cách chọn More > Tools > Graph API Explore hoặc truy vấn vào links này:https://developers.facebook.com/tools/explorer/

*

Để ý vào trang này, các bạn sẽ thấy bao gồm 4 phần đặc biệt cần chú ý:

Access Token: Là mã gửi lên server. Nếu như khách hàng đang login 1 thông tin tài khoản Facebook thì cực hiếm này sẽ tiến hành hiển thị khoác định cho tài khoản đó. Với từng ứng dụng sẽ có mã mặc định khác nhau.URL trình lên server để nhận tin tức trả về. Mặc định là /me?fields=id,nameSau khi thừa nhận thử Submit, ở bên trái màn hình, chúng ta cũng có thể chọn fields tùy thích để demo thử.Bên phải screen là công dụng trả về sau khi chúng ta gửi request.


*

Bình thường áp dụng chỉ được phép truy vấn public profile của fan dùng, nếu bạn có nhu cầu truy vấn thêm thì cấp thêm quyền bằng cách kích vào button Get Token > Get User Access Token. Nó đang hiển thị 1 popup gồm các quyền như là user_friends (lấy danh sách bạn bè), user_birthday (lấy ngày sinh của người dùng), user_link (lấy liên kết trong trang cá nhân)...Khi cung cấp 1 quyền nào đấy thì sẽ xuất hiện thêm 1 hộp thoại với văn bản như sau:

*

Trường hợp trên là mình cấp quyền get các mục friends.Sau khi cấp quyền, chúng ta chọn fields là friends cùng submit thì sẽ nhận được danh sách bạn bè cùng áp dụng ứng dụng với mình.

Vì bài vẫn tồn tại ngắn nên mình đã lảm nhảm thêm về Access token.

Access token

Khi ai đó kết nối với một ứng dụng bằng cách Đăng nhập vào Facebook và chấp nhận cấp quyền truy vấn cho ứng dụng thì dịp đó vận dụng sẽ rước được mã truy vấn tạm thời của người tiêu dùng đó.

Mã truy cập là một chuỗi khẳng định người dùng, áp dụng hoặc trang. Ứng dụng rất có thể dùng mã đó để triển khai lệnh hotline Graph API.

Bạn rất có thể lấy mã truy vấn bằng nhiều phương thức. Phần sau của tài liệu này sẽ nêu từng phương thức. Mã bao gồm thông tin về thời gian mã sẽ hết hạn và ứng dụng đã sản xuất mã đó. Vì khám nghiệm quyền riêng tư, đa phần các lệnh điện thoại tư vấn API trên Facebook đều cần có mã truy tìm cập. Mã truy cập có những loại khác nhau để cung cấp các ngôi trường hợp áp dụng khác nhau.

Có 3 các loại mã truy vấn là:

Mã truy vấn người dùng: dùng để thay mặt đại diện một người sửa đổi hoặc ghi dữ liệu Facebook của fan đóMã truy cập ứng dụng: dùng để làm đăng hành vi trong mở cửa GraphMã truy cập trang: dùng để làm sửa đổi tài liệu thuộc về 1 trang Facebook

Sở dĩ hotline là mã truy cập tạm thời vị mã truy vấn có 2 loại:

Mã ngắn hạn: thường có thời hạn khoảng 1 đến 2 giờ.Mã nhiều năm hạn: thông thường sẽ có thời hạn khoảng chừng 60 ngày.

Các thời hạn này sẽ không giữ nguyên, bạn không nên dựa vào đó - thời hạn gồm thể đổi khác mà không tồn tại cảnh báo hoặc rất có thể hết hạn sớm.Mã truy cập được tạo bằng phương pháp đăng nhập web thường là mã thời gian ngắn nhưng bạn có thể chuyển thành mã nhiều năm hạn bằng phương pháp thực hiện tại lệnh gọi API phía máy chủ cùng với secret key của ứng dụng.

Xem thêm: Power Distance Index ( Pdi Là Gì ? Giải Đáp Mọi Câu Hỏi Mà Bạn Đang Tìm Kiếm?

Sau khi bao gồm mã truy cập, chúng ta có thể sử dụng mã này để tiến hành gọi lệnh từ ứng dụng di động, trình trông nom web hoặc từ trang bị chủ của người tiêu dùng đến máy chủ của Facebook. Trường hợp mã được đem trên ứng dụng, chúng ta có thể chuyển mã kia xuống máy chủ và dùng trong lệnh gọi sever đến thứ chủ.Hiện giờ mình thấy hầu hết phải thực hiện HTTPs để lấy được mã truy hỏi cập. Vậy nên mình phải thực hiện ngrok nhằm public host, đưa từ localhost lịch sự HTTPS.