![](/img/trans.png)
[英]403 forbidden error while sending messages to facebook connector through Unification Engine API
[英]Forbidden error 403 in Unification Engine API while sending message
我正在使用#unificationengine API在Facebook上發送消息。 我在Facebook上注冊我的APP時提供的詳細信息:
網站網址: http:// localhost:3000
電子郵件地址和其他必需的詳細信息
在unificationengine API中,我逐步使用了其文檔中提到的所有curl,如下所示:1.使用API密鑰和密鑰創建了用戶2.添加了連接3.測試連接4.刷新連接5.發送消息
所有4個都給出了200個成功代碼,但發送消息卻給出了403錯誤。
我為此使用的卷曲如下:
$post_msg = json_encode(
array(
'message' =>
array(
'receivers' =>
array(
array(
'name' => 'Me',
'address' => 'https://graph.facebook.com/v2.5/me/feed',
'Connector' => 'facebook'
),
),
'sender' =>
array('address' => ''),
'subject' => 'Hello',
'parts' =>
array(
array(
'id' => '1',
'contentType' => 'text/plain',
'data' => 'Hi welcome to UE',
'size' => 100,
'type' => 'body',
'sort' => 0
),
),
),
)
);
$ch = curl_init('https://apiv2.unificationengine.com/v2/message/send');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_USERPWD,'3f43c37b-a066-4cc4-a3be-33faf72d6a21:2722fc72d-5d347-4a3a-a82b-0c1ss51aafb4');
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_msg);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// execute!
$response = curl_exec($ch);
// close the connection, release resources used
curl_close($ch);
// do anything you want with your response
var_dump($response);
return ['label' =>$response];
我試圖弄清楚這一點。 但是沒有成功。
再說一遍,我想在本地主機上使用它,這可能是導致錯誤的原因嗎? 如果是這樣,那么我們從中獲取訪問令牌的facebook graph api也應該給出此類錯誤。
早些時候我發布了這個問題 ,在這里我也沒有找到正確的解決方案。 我在此處添加了我的問題的評論中提到的Curl選項,但並沒有改變事情。
任何幫助將不勝感激。
錯誤信息:
{\\“狀態\\”:{\\“ facebook \\”:{\\“狀態\\”:403,\\“信息\\”:\\“禁止訪問:\\”}},\\“ URIs \\”:[]}
更新以下是我在facebook graph API資源管理器中運行我/權限時得到的json:
{
"data": [
{
"permission": "user_birthday",
"status": "granted"
},
{
"permission": "user_about_me",
"status": "granted"
},
{
"permission": "user_status",
"status": "granted"
},
{
"permission": "user_posts",
"status": "granted"
},
{
"permission": "email",
"status": "granted"
},
{
"permission": "manage_pages",
"status": "granted"
},
{
"permission": "publish_actions",
"status": "granted"
},
{
"permission": "public_profile",
"status": "granted"
}
]
}
您能否確認您輸入的“連接器”名稱正確嗎?
當我嘗試您提供的示例代碼時,我可以通過UE將消息發送到Facebook。
您能否提供執行命令時返回的確切錯誤消息?
我已經解決了這個問題:
public function facebookSharing($access_token) {
$app = new UEApp(env('UNIFICATION_APP_KEY'), env('UNIFICATION_APP_SECRATE'));
$user = new UEUser('unification_userkey', 'unification_usersecret');
$connection = $user->add_connection('FACEBOOK', "facebook", $access_token);
$options = array(
"receivers" => array(
array(
"name"=> "Me"
)
),
"message"=>array(
"subject"=>'testing',
"body"=> 'description',
"image"=> 'use any image url',
"link"=>array(
"uri"=> 'any web site url',
"description"=> "",
"title"=>"Title"
)
)
);
$uris = $connection->send_message($options);
}
請使用您的密鑰,例如facebook accesstoken的UNIFICATION_APP_KEY(其統一密鑰)UNIFICATION_APP_SECRATE(其統一密鑰)
如果無法解決問題,請告訴我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.