0

私は次の問題を抱えています:このスクリプトが実行されるとき

    $url = 'http://search.twitter.com/search.json?q=obama';
    $tw = file_get_contents($url,0,null,null);

このメッセージを受け取りました。

Warning (2): file_get_contents(http://search.twitter.com/search.json?q=obama) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 420 Client Error (420)

しかし、それは常に機能しているので、それは非常に奇妙です!手伝って頂けますか?追加...私はこのようにCURLを使用しようとしました

$url = 'http://search.twitter.com/search.json?q=obama';
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_URL, $url);
$contents = curl_exec($c);
echo $contents;
curl_close($c); 

しかし、呼び出しはこのメッセージ「エラー」を返しました:「あなたはレート制限されています。あなたの落ち着きを高めてください。」}そして私が以前に何の要求もしなかったのでそれはばかげているように見えました。

4

1 に答える 1

0

この場合のベストプラクティスはCURLを使用することです。理由はわかりませんが、urlencodeを使用してパラメーター(「obama」)を渡そうとしましたが、この警告の主な原因はその構文(以前は正しくない)のようです。

于 2013-05-17T10:43:20.443 に答える