我正在嘗試使用 Facebook Graph API 進行 POST。我確實遵循了檔案。我還將帖子欄位分隔為:檔案、型別和訊息傳遞產品:相同的結果。
$this->endpoint = 'PHONE_NUMBER_ID/media';
$this->config->default_access_token = 'XXXXXXXX';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://graph.facebook.com/v14.0/'.$this->endpoint);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$post = array(
'file' => '@/var/www/html/6218062.pdf;type=application/pdf',
'messaging_product' => 'whatsapp'
);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
$headers = array();
$headers[] = 'Authorization: Bearer '.$this->config->default_access_token;
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);
print_r($result);
這是結果:
{"error":{"message":"An unknown error has occurred.","type":"OAuthException","code":1,"fbtrace_id":"A_A8o81x3K5kCpGD5cP1rw6"}}
我可以發送訊息和所有內容,但我不能從本地服務器發送帶有檔案的訊息,只能從外部服務器發送訊息,例如:https ://sitename.com/file/doc.pdf 。
我想使用本地服務器中的檔案并將其作為訊息發送。
誰能幫我?
uj5u.com熱心網友回復:
我解決了這個問題。
這是作業代碼。
$this->endpoint = 'PHONE_NUMBER_ID/media';
$this->config->default_access_token = 'XXXXXXXX';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://graph.facebook.com/v14.0/'.$this->endpoint);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$post = array(
'file' => curl_file_create('/var/www/html/6218062.pdf', 'application/pdf'),
'messaging_product' => 'whatsapp'
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$headers = array();
$headers[] = 'Authorization: Bearer '.$this->config->default_access_token;
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);
print_r($result);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/504825.html
