使用twitter API通过以下方法发送直接消息:带有php,tmhOAuth库的“ POST direct_messages / new”。
自几天前以来,它们发生了变化(如migration documentation中所述 )的方法:“ POST direct_messages / events / new”,其中post参数的结构发生了变化,即json。
进行更改以表明在测试时获得响应代码415:“此客户端应用程序未批准回调URL。可以在应用程序设置中调整批准的回调URL”(twitter help)
向应用程序添加url回调,始终出现相同的错误。有人迁移时有同样的问题吗?有什么建议吗?
我用一些代码详细介绍了实现的更改:
$options = array(
"event" => array(
"type" => 'message_create',
"message_create" => array(
"target" => array('recipient_id' => $id_usuario),
"message_data" => array('text' => $texto),
),
)
);
$json_options = json_encode($options);
$headers_extra = array('Content-Type' => 'application/json');
$code = $this->_tmhOAuth->request('POST', $this->_tmhOAuth->url('1.1/direct_messages/events/new'), $json_options, $headers_extra);
1)在“选项”中,格式由请求的json更改,
2)在发送请求方法之前使用“ json_encode”功能。
3)添加了“ Content-Type”标头,以供tmhOAuth库使用。
感谢您的任何评论或帮助
答案 0 :(得分:0)
tmhOauth太旧,并且有一段时间没有更新。我花了一些时间尝试进行调整,最后切换到https://twitteroauth.com/
按照 JSON数据部分中的示例,我能够在1分钟内发送DM和4行代码。