複雜한 一括 要請
一般的으로 서로 다른 HTTP 메서드를 使用하는 作業을 單一 一括 要請으로 結合할 수 있습니다.
GET
과
DELETE
作業은
relative_url
과
method
필드만 가질 수 있고
POST
와
PUT
作業에는 選擇的
body
필드가 包含될 수 있습니다. 本文은 URL 檢索 文字列과 비슷한 遠視 HTTP POST 文字列 形式으로 指定해야 합니다.
要請 샘플
다음 例示에서는 管理 對象이고 揭示 權限이 있는 페이지에 새 揭示物을 揭示한 다음, 페이지의 피드를 한 番의 作業으로 가져옵니다.
curl "https://graph.facebook.com/PAGE-ID?batch=
[
{
"method":"POST",
"relative_url":"PAGE-ID/feed",
"body":"message=Test status update"
},
{
"method":"GET",
"relative_url":"PAGE-ID/feed"
}
]
&access_token=ACCESS-TOKEN"
이 呼出의 出力은 다음과 같습니다.
[
{ "code": 200,
"headers": [
{ "name":"Content-Type",
"value":"text/javascript; charset=UTF-8"}
],
"body":"{\"id\":\"…\"}"
},
{ "code": 200,
"headers": [
{ "name":"Content-Type",
"value":"text/javascript; charset=UTF-8"
},
{ "name":"ETag",
"value": "…"
}
],
"body": "{\"data\": [{…}]}
}
]
다음 例示에서는 캠페인에 對해 새 廣告를 만든 다음, 새로 만든 個體의 詳細 情報를 가져옵니다. 本文 媒介變數에 對한
URL 인코딩
에 留意하세요.
curl \
-F 'access_token=...' \
-F 'batch=[
{
"method":"POST",
"name":"create-ad",
"relative_url":"11077200629332/ads",
"body":"ads=%5B%7B%22name%22%3A%22test_ad%22%2C%22billing_entity_id%22%3A111200774273%7D%5D"
},
{
"method":"GET",
"relative_url":"?ids={result=create-ad:$.data.*.id}"
}
]' \
https://graph.facebook.com
다음의 例示에서는 여러 페이지를 비즈니스 管理者에 追加합니다.
curl \
-F 'access_token=<ACCESS_TOKEN>' \
-F 'batch=[
{
"method":"POST",
"name":"test1",
"relative_url":"<BUSINESS_ID>/owned_pages",
"body":"page_id=<PAGE_ID_1>"
},
{
"method":"POST",
"name":"test2",
"relative_url":"<BUSINESS_ID>/owned_pages",
"body":"page_id=<PAGE_ID_2>"
},
{
"method":"POST",
"name":"test3",
"relative_url":"<BUSINESS_ID>/owned_pages",
"body":"page_id=<PAGE_ID_3>"
},
]' \
"https://graph.facebook.com/v12.0"
變數 說明:
<ACCESS_TOKEN>
은
business_management
權限이 있는 액세스 토큰입니다.
<BUSINESS_ID>
는 페이지를 登錄해야 하는 비즈니스 管理者의 ID입니다.
<PAGE_ID_n>
은 登錄할 페이지의 ID입니다.