1

アプリケーションに Twitpic API を使用しています。エラーが見つかったように見えないので、私は少し立ち往生しています。このコードは、私が読んだすべてのドキュメントが正しいと言っています。助けていただければ幸いです。ありがとう!

function do_twitpic() 
{           
    $media = 'http://image-to-upload.jpg'; 
    $username = $_POST['username'];
    $password = $_POST['password'];

    $postfields = array(); 
    $postfields['username'] = $username; 
    $postfields['password'] = $password;  
    $postfields['media'] = "@".$media;

    $twitter_url = 'http://twitpic.com/api/upload'; 
    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 2); 
    curl_setopt($curl, CURLOPT_HEADER, false); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($curl, CURLOPT_BINARYTRANSFER, 1); 
    curl_setopt($curl, CURLOPT_URL, $twitter_url); 
    curl_setopt($curl, CURLOPT_POST, 3); 
    curl_setopt($curl, CURLOPT_POSTFIELDS, $postfields); 
    $result = curl_exec($curl); 
    curl_close($curl); 
    $login_xml = new SimpleXMLElement($result); 
    if (isset($login_xml->error)) { 
        print_r($login_xml); 
    } else { 
        print_r($login_xml); 
    }   
}

どうもありがとう!

4

2 に答える 2

0

@パブリック URL ではなく、画像の「実際のパス」の前にある は、画像を動的にバイナリ データに変換します。

于 2012-03-20T23:10:28.710 に答える
0

このページによると、 $media は画像への URL ではなく、画像のバイナリ エンコード データである必要があります。 http://www.twitpic.com/api.do#upload

于 2011-03-08T15:36:18.077 に答える