Permintaan Debug

Mode Debug Graph API

Saat Mode Debug diaktifkan, tanggapan Graph API mungkin berisi kolom tambahan yang menjelaskan potensi isu dengan permintaan tersebut.

Untuk mengaktifkan mode debug, gunakan parameter string kueri debug. Contoh:

curl -i -X GET \
  "https://graph.facebook.com/{user-id}
    ?fields=friends
    &debug=all
    &access_token={your-access-token}"
GraphRequest request = GraphRequest.newMeRequest(
  accessToken,
  new GraphRequest.GraphJSONObjectCallback() {
    @Override
    public void onCompleted(JSONObject object, GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "friends");
parameters.putString("debug", "all");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{user-id}"
           parameters:@{ @"fields": @"friends",@"debug": @"all",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{user-id}',
  'GET',
  {"fields":"friends","debug":"all"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{user-id}',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Jika izin user_friends tidak diberikan, ini menghasilkan tanggapan berikut:

{
  "data": [
  ], 
  "__debug__": {
    "messages": [
      {
        "message": "Field friends is only accessible on User object, if user_friends permission is granted by the user", 
        "type": "warning"
      }, 
      {
        "link": "https://developers.facebook.com/docs/apps/changelog#v2_0", 
        "message": "Only friends who have installed the app are returned in versions greater or equal to v2.0.", 
        "type": "info"
      }
    ]
  }
}

Nilai parameter debug dapat diatur ke "all" atau ke tingkat severitas minimal yang sesuai dengan permintaan type pesan:

Nilai Param Debug Yang Akan Dikembalikan

semua

Semua pesan debug yang tersedia.

info

Pesan debug dengan jenis info dan warning.

warning

Hanya debug pesan dengan jenis warning.

Informasi debug, jika tersedia, dikembalikan sebagai objek JSON di bawah kunci __debug__ dalam array messages. Setiap elemen dari array ini adalah objek JSON yang berisi kolom berikut:

Kolom Jenis data Deskripsi

message

String

Pesannya.

jenis

String

Severitas pesan.

tautan

String

[Opsional] URL menunjuk ke informasi terkait.

Anda juga dapat menggunakan Mode Debug dengan Graph API Explorer.

Menentukan Versi yang digunakan dengan Permintaan API

Saat Anda membuat aplikasi dan membuat permintaan Graph API, menentukan versi API yang menanggapi Anda mungkin berguna. Contoh: jika Anda melakukan panggilan tanpa menentukan versi, versi API yang menanggapi mungkin tidak Anda ketahui.

Graph API menyediakan header permintaan dengan tanggapan bernama facebook-api-version yang menunjukkan versi persis dari API yang menghasilkan tanggapan. Contoh: panggilan Graph API yang membuat permintaan dengan v2.0 menghasilkan header HTTP berikut:

facebook-api-version:v2.0

Header facebook-api-version ini mengizinkan Anda untuk menentukan apakah panggilan API dikembalikan dari versi yang Anda harapkan.

Info Debug untuk Melaporkan Bug

Saat melaporkan bug di Graph API, kami menyertakan beberapa header permintaan tambahan untuk dikirim bersama laporan bug Anda agar membantu kami menentukan dan mereproduksi isu tersebut. Header permintaan ini adalah X-FB-Debug, x-fb-rev, dan X-FB-Trace-ID.