现在我使用此代码从twitter获取流,它工作正常。 但很快就会弃用使用用户和密码的基本身份验证,如何使用oauth发送此请求?
$fp = fsockopen("ssl://stream.twitter.com", 443, $errno, $errstr, 30);
if (!$fp)
{
echo "ERROR: Twitter Stream Error: failed to open socket";
} else
{
$request = "GET /1.1/statuses/filter.json?track=";
$request .= urlencode(implode($_keywords, ',')) . " HTTP/1.1\r\n";
$request .= "Host: stream.twitter.com\r\n";
$request .= "Authorization: Basic ";
$request .= base64_encode($this->m_username . ':' . $this->m_password);
$request .= "\r\n\r\n";
答案 0 :(得分:0)
你可以使用像tmhOAuth这样的东西来轻松地实现这样的目标。
在此处找到lib:https://github.com/themattharris/tmhOAuth
使用filter.json的示例: https://github.com/themattharris/tmhOAuth-examples/blob/master/streaming.php
此外,您还需要一个应用程序,注册/登录(使用您的普通推特帐户)并通过以下方式创建一个:https://dev.twitter.com