เวอร์ชันของ API กราฟ

ความคิดเห็น /{comment-id}

คุณสามารถใช้ comment ได้กับเนื้อหาบน Facebook หลายประเภท โหนด API กราฟส่วนใหญ่จะมีจุดเชื่อมโยง /comments ที่แสดงรายการความคิดเห็นทั้งหมดบนอ็อบเจ็กต์นั้นๆ โหนด /{comment-id} จะส่งคืน comment เพียงรายการเดียว

การอ่าน

ประสบการณ์การใช้งานเพจแบบใหม่

ระบบรองรับ API นี้สำหรับประสบการณ์การใช้งานเพจแบบใหม่

สิทธิ์การอนุญาต

  • ทั่วไป - หากต้องการอ่านความคิดเห็น โดยทั่วไปแล้วคุณจำเป็นต้องใช้สิทธิ์การอนุญาตเดียวกันกับที่ต้องใช้ในการดูอ็อบเจ็กต์ที่มีความคิดเห็นนั้นๆ อยู่

  • การตอบกลับ - หากความคิดเห็นนี้เป็นการตอบกลับความคิดเห็นอื่นอีกทีหนึ่ง สิทธิ์การอนุญาตที่จำเป็นต้องใช้ก็จะมีผลกับอ็อบเจ็กต์ที่มีความคิดเห็นหลักอยู่ด้วย

  • ความคิดเห็นและการตอบกลับที่เป็นของเพจ - ในกรณีของความคิดเห็นหรือการตอบกลับใดๆ ที่เป็นของ (อยู่บน) เพจ คุณจะต้องใช้โทเค็นการเข้าถึงเพจ หากคุณต้องการให้มีข้อมูลผู้ใช้รวมอยู่ในการตอบกลับด้วย

เราได้เลิกใช้รูปแบบ ID ของความคิดเห็นต่อโพสต์บนเพจแบบ {page-id}_{post_id}_{comment-id} ไปแล้ว และใช้รูปแบบ {pagepost-id}_{comment-id} แทน

Graph API Explorer
GET /v21.0/{comment-id} HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get(
    '/{comment-id}',
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/{comment-id}",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{comment-id}",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{comment-id}"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

ช่อง

ชื่อคุณสมบัติ คำอธิบาย ประเภท

id

ID ความคิดเห็น

string

attachment

ลิงก์ วิดีโอ สติกเกอร์ หรือรูปภาพที่แนบมากับความคิดเห็นดังกล่าว

StoryAttachment

can_comment

ผู้ชมสามารถตอบกลับความคิดเห็นนี้ได้หรือไม่

bool

can_remove

ผู้ชมสามารถลบความคิดเห็นนี้ออกได้หรือไม่

bool

can_hide

ผู้ชมสามารถซ่อนความคิดเห็นนี้ได้หรือไม่ มีเพียงผู้ดูแลเพจเท่านั้นที่มองเห็นได้

boolean

can_like

ผู้ชมสามารถถูกใจความคิดเห็นนี้ได้หรือไม่

boolean

can_reply_privately

ผู้ชมสามารถตอบกลับแบบส่วนตัวไปยังความคิดเห็นนี้ได้หรือไม่ (ผู้ชมเพจเท่านั้น)

boolean

comment_count

จำนวนข้อความตอบกลับของความคิดเห็นนี้

int32

created_time

เวลาที่แสดงความคิดเห็นนี้

datetime

from

ผู้ที่แสดงความคิดเห็นนี้

User

like_count

จำนวนครั้งที่มีการกดถูกใจความคิดเห็นนี้

int32

message

ข้อความของความคิดเห็น

string

message_tags

อาร์เรย์ของโปรไฟล์ที่ได้รับการแท็กใน message

object[]

id

ID ของโปรไฟล์ที่ได้รับการแท็ก

string

name

ข้อความที่ใช้ในแท็ก

string

type

ระบุประเภทโปรไฟล์ที่ได้รับการแท็ก

enum{user, page, group}

offset

ตำแหน่งของอักขระตัวแรกของข้อความที่ได้รับการแท็กใน message โดยวัดใน Code Point แบบ Unicode

integer

length

จำนวน Code Point แบบ Unicode ที่แท็กนี้มีอยู่ภายหลังจากออฟเซ็ต

integer

object

ความคิดเห็นบนโพสต์ที่มีรูปภาพหรือวิดีโอ ซึ่งรวมถึงความคิดเห็นในโพสต์แบบไดนามิก หากไม่เป็นเช่นนั้น ส่วนนี้จะว่างเปล่า

Object

parent

ในกรณีที่เป็นการตอบกลับความคิดเห็น ส่วนนี้จะเป็นความคิดเห็นที่มีการตอบกลับนั้นๆ อยู่

Comment

permalink_url

URL ลิงก์ถาวรของความคิดเห็น

หากแอพที่เรียกใช้มีเพียงฟีเจอร์สิทธิ์การเข้าถึงเนื้อหาแบบสาธารณะของเพจ ระบบก็จะไม่ส่งคืนในการสืบค้นเวอร์ชั่น 20.0 ขึ้นไป การเปลี่ยนแปลงนี้จะมีผลกับการสืบค้นทุกเวอร์ชั่นตั้งแต่วันที่ 19 สิงหาคม 2024

string

private_reply_conversation

ในกรณีที่เป็นความคิดเห็นที่มีการตอบกลับแบบส่วนตัว จะเป็นการดึงข้อมูลการสนทนาระหว่างเพจกับผู้แสดงความคิดเห็นนั้นๆ (ผู้ชมเพจเท่านั้น)

Conversation

user_likes

ผู้ชมได้กดถูกใจความคิดเห็นนี้หรือไม่

bool

การเผยแพร่

คุณสามารถเผยแพร่ความคิดเห็นต่างๆ ได้โดยใช้จุดเชื่อมโยง /comments เมื่อมีจุดเชื่อมโยงดังกล่าวอยู่บนโหนด

การลบ

คุณสามารถลบความคิดเห็นได้โดยใช้ตำแหน่งข้อมูลต่อไปนี้

DELETE /v21.0/{comment-id} HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->delete(
    '/{comment-id}',
    array (),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/{comment-id}",
    "DELETE",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{comment-id}",
    null,
    HttpMethod.DELETE,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{comment-id}"
                                      parameters:params
                                      HTTPMethod:@"DELETE"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

ประสบการณ์การใช้งานเพจแบบใหม่

ระบบรองรับ API นี้สำหรับประสบการณ์การใช้งานเพจแบบใหม่

ข้อกำหนด

หากต้องการลบความคิดเห็นที่โพสต์โดยเพจ คุณจำเป็นต้องใช้สิ่งต่อไปนี้

  • โทเค็นการเข้าถึงเพจที่ขอโดยบุคคลที่สามารถดำเนินงาน "MODERATE" บนเพจนั้นได้
  • สิทธิ์การอนุญาต pages_read_engagement
  • สิทธิ์การอนุญาต pages_manage_engagement

หากต้องการลบความคิดเห็นที่โพสต์โดยผู้ใช้หรือเพจอื่น คุณจำเป็นต้องใช้สิ่งต่อไปนี้

  • โทเค็นการเข้าถึงเพจที่ขอโดยบุคคลที่สามารถดำเนินงาน "MODERATE" บนเพจนั้นได้
  • สิทธิ์การอนุญาต pages_manage_engagement
  • สิทธิ์การอนุญาต pages_read_user_content

ข้อจำกัด

รีวิวไม่ใช่โพสต์บนเพจ เพจจึงไม่สามารถลบความคิดเห็นที่มีต่อรีวิวได้

การตอบกลับ

หากสำเร็จ การแสดงผลจะเป็นดังนี้

{
  "success": true
}

หากไม่สำเร็จ ระบบจะส่งคืนข้อความแสดงข้อผิดพลาดที่เกี่ยวข้อง

การอัพเดต

คุณสามารถแก้ไขความคิดเห็นได้โดยใช้ตำแหน่งข้อมูลต่อไปนี้

POST /v21.0/{comment-id} HTTP/1.1
Host: graph.facebook.com

message=This+is+a+test+comment
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/{comment-id}',
    array (
      'message' => 'This is a test comment',
    ),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/{comment-id}",
    "POST",
    {
        "message": "This is a test comment"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("message", "This is a test comment");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{comment-id}",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
NSDictionary *params = @{
  @"message": @"This is a test comment",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{comment-id}"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

ประสบการณ์การใช้งานเพจแบบใหม่

ระบบรองรับ API นี้สำหรับประสบการณ์การใช้งานเพจแบบใหม่

สิทธิ์การอนุญาต

  • โทเค็นการเข้าถึงเพจที่ขอโดยบุคคลที่สามารถดำเนินงาน "MODERATE" บนเพจนั้นได้
  • สิทธิ์การอนุญาต pages_read_engagement
  • สิทธิ์การอนุญาต pages_manage_engagement

การซ่อนความคิดเห็น

คุณสามารถซ่อนความคิดเห็นส่วนมากบนโพสต์ได้ โดยมีข้อยกเว้นดังต่อไปนี้

  • ความคิดเห็นที่มาจากเพจ
  • ความคิดเห็นที่มาจากผู้ดูแลของเพจ
  • ความคิดเห็นที่มาจากเพจบนโพสต์ของผู้ใช้ โพสต์เป็นของผู้ใช้
  • ความคิดเห็นที่มาจากผู้ใช้รายใดก็ตามที่มีต่อโพสต์ของผู้ใช้รายอื่นบนเพจ โพสต์เป็นของผู้ใช้
  • ความคิดเห็นที่มาจากผู้สร้างงานกิจกรรม โพสต์เป็นของผู้สร้างงานกิจกรรมนั้นๆ
  • ความคิดเห็นที่มาจากกลุ่มบน Facebook โพสต์เป็นของกลุ่มนั้นๆ
  • ความคิดเห็นที่มาจากผู้ใดก็ตามในรีวิว

ช่อง

คุณจะต้องระบุ attachment_url, attachment_id, message หรือ attachment_share_url อย่างใดอย่างหนึ่งเมื่ออัพเดต

คุณจะต้องใส่ข้อความหรือสิ่งที่แนบมา โดยใส่อย่างใดอย่างหนึ่ง ทั้งนี้ สิ่งที่แนบมาอาจเป็น url, attachment_id หรือ attachment_share_url ก็ได้ คุณอาจใส่ id และ url ไว้ด้วยกันได้ แต่หากคุณใส่ attachment_share_url คุณจะต้องไม่ใส่รายการอื่นๆ

เมื่อทำการอัพเดต คุณจะต้องใส่ค่าที่อยู่ในเนื้อหาต้นฉบับลงไปให้ครบถ้วน หากคุณไม่ได้ใส่ค่าใดค่าหนึ่งลงไป ระบบจะลบค่าดังกล่าวออกจากเนื้อหาหลังการอัพเดต เช่น หากคุณอัพเดตความคิดเห็นที่มีรูปภาพซึ่งระบุไว้ผ่าน attachment_url และคุณไม่ได้ใส่รูปภาพดังกล่าวไว้ในการอัพเดต ระบบก็จะลบรูปภาพนั้นออก

การอัพเดตรองรับช่องต่างๆ ที่ระบุไว้ในส่วนการเผยแพร่ของ /object/comments ซึ่งช่องเหล่านี้รวมถึง attachment_url, attachment_id, message และ source โปรดดูรายละเอียดเกี่ยวกับช่องเหล่านั้นที่เอกสารดังกล่าว

นอกจากนี้ การอัพเดตยังรองรับช่อง is_hidden อีกด้วย ซึ่งเราได้ให้ข้อมูลไว้ที่นี่

ชื่อ คำอธิบาย ประเภท

is_hidden

ความคิดเห็นนี้ถูกซ่อนไว้หรือมองเห็นได้ ผู้โพสต์คนแรกจะยังคงมองเห็นความคิดเห็นได้ รวมทั้งผู้ดูแลเพจและคนอื่นๆ ที่ได้รับการแท็กในความคิดเห็นนั้นก็มองเห็นด้วยเช่นกัน

boolean

การตอบกลับ

หากสำเร็จ คุณจะได้รับการตอบกลับพร้อมข้อมูลดังต่อไปนี้ นอกจากนี้ ตำแหน่งข้อมูลนี้รองรับอ่าน-หลังจาก-เขียน และสามารถส่งคืนช่องใดๆ ที่ส่งคืนมาโดยการดำเนินการอ่านได้ทันที

{
  "success": true
}

หากไม่สำเร็จ ระบบจะส่งคืนข้อความแสดงข้อผิดพลาดที่เกี่ยวข้อง

จุดเชื่อมโยง

ชื่อคุณสมบัติ คำอธิบาย ประเภท
/comments

ความคิดเห็นที่ตอบกลับความคิดเห็นนี้

Edge<Comment>
/likes

ผู้คนที่กดถูกใจความคิดเห็นนี้

Edge<Profile>
/reactions

ผู้คนที่แสดงความรู้สึกต่อโพสต์นี้

Edge<Reaction>
/private_replies

ใช้เพื่อส่งข้อความตอบกลับแบบส่วนตัวไปยังความคิดเห็นนี้ (ผู้ชมเพจเท่านั้น)

Edge<Message>