• 締切済み

C++でのTwitter画像投稿

現在、twicpp(http://www.soramimi.jp/twicpp/)を使ってC++でTwitter投稿を勉強しています。通常の投稿は何とか出来たのですが。画像投稿をどうすれば良いか見当もつかず困ってます。ヒントなどご教示いただければ助かります。 twicppのmain.cppを以下のように変更して、request parameterに画像ファイルを渡せば良いかと考えましたが、画像ファイルをどうやってparameterにエンコードすれば良いのか分からず、詰まってしまっています。そもそもこれだけで大丈夫なのかも自信がなくて。 std::string uri = "http://api.twitter.com/1/statuses/update.xml"; // 2012-11-15 uri += "?status="; uri += oauth_url_escape(message.c_str()); ↓ std::string uri = "http://upload.twitter.com/1/statuses/update_with_media.xml"; uri += "?status="; uri += oauth_url_escape(message.c_str()); uri += "&media[]="; uri += ここをどうすれば良い?; twicppを使っての画像投稿についてご教示願います。 以上よろしくお願いします。

  • n2n
  • お礼率83% (5/6)

みんなの回答

回答No.1

こちらが参考になると思います。 POST statuses/update_with_media https://dev.twitter.com/docs/api/1.1/post/statuses/update_with_media

n2n
質問者

お礼

回答ありがとうございます。 ただ、このAPI仕様を満たすrquestをC++(twicpp)でどうやって実現するかの部分が分からなくて困っております。 例を見てもちょっと分からなかったです。

関連するQ&A

  • TwitterのOauth認証プログラムについて

    TwitterのOauth認証プログラムについて 現在、Oauth認証を使って、一般ユーザが認証確認後、 WEBから投稿できるシステムを作ろうとしています。 Oauth_TokenとOauth_Token_Secretは、 $tok = $to->getRequestToken(); で取得されたものを変数として保持して取得しようとしているのですが、 この2つの認証コードと、固有の consumer_keyとconsumer_secretを使用して 認証させ、投稿プログラム $req = $to->OAuthRequest("https://twitter.com/statuses/update.xml","POST",array("status"=> $tweet . " " . $url . " #" . $hash)); を実行させると、なぜか <?xml version="1.0" encoding="UTF-8" ?> - <hash> <request>/statuses/update.xml</request> <error>Could not authenticate you.</error> </hash> つまり、認証されてない状態になってしまいます。 Oauth_TokenとOauth_Token_Secretを取得している場所が間違っているのでしょうか? もしかしてこの2つのコードが逆だったのかもしれないと思い、 逆にして投稿してみたのですが、それでも同じエラー画面に飛んでしまいます。 なぜだか分かる方、いらっしゃいますか?

    • ベストアンサー
    • PHP
  • Twitter Botで、自動フォロー返しとフォローしたときにメッセー

    Twitter Botで、自動フォロー返しとフォローしたときにメッセージ送るように書き換えたところ フォロー返しもメッセージも送れているようなのですが 下記のメッセージが出て、理解できません。 ファイルもいろいろ見てるのですが object(SimpleXMLElement)#9 (2) { ["request"]=> string(20) "/statuses/update.xml" ["error"]=> string(22) "Status is a duplicate." } とか object(SimpleXMLElement)#10 (2) { ["request"]=> string(20) "/statuses/update.xml" ["error"]=> string(19) "Incorrect signature" } 他にも、たまに、数字が変わります。 教えていただけませんでしょうか? 投稿日時 - 2010-04-16 13:25:17 通報する

    • ベストアンサー
    • PHP
  • ツイッターのAPIでOAUTH認証を使用してのAPIリクエストについて

    ツイッターのAPIでOAUTH認証を使用してのAPIリクエストについて ツイッターのAPIを利用してアプリケーションを開発しています。 OAUTH認証でアクセストークンの取得まではできたのですが、 アクセストークンを使ってAPIにアクセスしたところページが 存在しないとの旨を伝えられました。 ↓実際のソース https://twitter.com/1/statuses/update.xml?in_reply_to_status_id=自分のID(アクセストークンで取得したもの)&oauth_consumer_key=OAUTHコンシューマキー&oauth_nonce=ランダム文字列&oauth_signature_method=HMAC-SHA1&oauth_timestamp=タイムスタンプ&oauth_token=アクセストークン&oauth_version=1.0&status=つぶやきたい内容&oauth_signature=署名 上記URLにheader()(リダイレクト)でアクセスしています。simplexml_load_file()や file_get_contents();だと何も取得できませんでした。 特に不安なのがin_reply_to_status_idの指定先と実際のリクエストの仕方が良く わからない事です。何とかして呟きたいのでご教示よろしくお願いいたします。

  • twitter_bot PHPエラーについて教えて下さい。

    twitter_bot PHPエラーについて教えて下さい。 以下のようなエラーが出るのですが、ネットでいろいろ検索しても書いてあることが難しすぎてわかりません。どなたか教えて下さいませんか? (以下が実際のエラー文章) Twitterへの投稿に失敗しました。 ユーザー名:@●●●_bot object(SimpleXMLElement)#10 (2) { ["error"]=> string(19) "Incorrect signature" ["request"]=> string(20) "/statuses/update.xml" } 5分以内に受け取った@はないようです。

    • 締切済み
    • PHP
  • TwitterAPIをつかったクライアントアプリを作ろうとしています。

    TwitterAPIをつかったクライアントアプリを作ろうとしています。 ここのサイトを参考に作成中です。 http://www.ipentec.com/document/document.aspx?page=csharp-use-twitter-api-oauth-winform 投稿(stuses/update)は処理できるのですが、ツイートの取得(statuses/show)でエラーになってしまいます。 private void bttnEntryPinCode_Click(object sender, EventArgs e) { OAuth.oAuthTwitter o = new OAuth.oAuthTwitter(); o.ConsumerKey = Properties.Settings.Default.ConsumerKey; o.ConsumerSecret = Properties.Settings.Default.ConsumerSecret; o.Token = Properties.Settings.Default.AccessToken; o.TokenSecret = Properties.Settings.Default.AccessTokenSecret; string postURL = ""; string postData = ""; postURL = API + "statuses/update.xml"; postData = "status=" +"ただいまの時間" + DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString(); Console.WriteLine(o.oAuthWebRequest(OAuth.oAuthTwitter.Method.POST, postURL, postData)); //↑正常に処理 postURL = API + "statuses/show.xml"; postData = "id=13322284000"; Console.WriteLine(o.oAuthWebRequest(OAuth.oAuthTwitter.Method.GET, postURL, postData)); //404エラー } しかし、エラーになるURLをブラウザから直接入力すると正常に表示されます。 http://api.twitter.com/1/statuses/show.xml?id=13322284000 これ以外にも users/show.xml でも同様なエラーが出てしまいます。 なぜURLをブラウザにいれるとOKで、プログラムから呼ぶとエラーになるのか、 その原因がずっとわからずにいます。 原因をご存じでしたら、教えてください。 この部分で完全に止まってしまっています。

  • javaでTwitterのOAuth認証を用いたつぶやきのポストを実現

    javaでTwitterのOAuth認証を用いたつぶやきのポストを実現したいと考えています。アクセストークンとアクセストークンシークレットは取得できたのですがそれを用いてつぶやきをポストすることができません。OAuthのライブラリを使えばポストすることは出来たのですができればライブラリを使わずに実現したいと思っています。おそらくポストのやりかたがおかしいと思うのですが何が悪いのかわかりません。javaはあまり得意ではないためお見せするのも恥ずかしいソースですがおかしなところを指摘していただけるとありがたいです。ポストの部分を載せます。 String url="http://twitter.com/statuses/update.xml"; URL urlObj=new URL(url); HttpURLConnecton urlCon=(HttpURLConnection)urlObj.openConnection();urlCon.setRequestMethod("POST"); urlCon.setDoOutput(true); urlCon.setRequestProperty("Content-Type","application/x-www-form-urlencoded"); urlCon.setRequestProperty("Authorization",header); //変数headerには以下のような文字列が入っています //OAuth oauth_nonce="****", oauth_signature_method="HMAC-SHA1", oauth_timestamp="****", oauth_consumer_key="****", oauth_token="****", oauth_signature="****", oauth_version="1.0" String body="status=test"; PrintWriter pw=new PrintWriter(urlCon.getOutputStream()); pw.print(body); pw.flush(); pw.close(); //ここでエラー BufferedReader inStr=new BufferedReader(new InputStreamReader(urlCon.getInputStream()));

    • ベストアンサー
    • Java
  • TwitterのBOT作成について

    今ドットインストールを見ながらやっているんですが 途中で object(stdClass)#5 (2) { ["error"]=> string(34) "Could not authenticate with OAuth." ["request"]=> string(23) "/1/statuses/update.json" } と出てしまい、普通のエラーとは違う感じで表示されているのでどこが悪いのかわかりません。 お願いします

    • ベストアンサー
    • PHP
  • Twitterフォロワー数 取得 API xml

    【 Twitterフォロワー数 取得 API xml 】 twitterのフォロワー数を取得しwebsiteに表示したいです。 下記のcodeを記述したのですが、 取得出来ない場合があります。 (Aのサイトですと表示されBのサイトですと表示されない) <?php $urlt = str_replace(0xefbbbf, '', file_get_contents('http://api.twitter.com/1/statuses/user_timeline.xml?id=□□□□□□')); $xmlt = simplexml_load_string($urlt); print $xmlt->status->user->followers_count; ?> ※上記の □□□□□□ 部分には 表示させたいtwitterのscreen_nameかidをいれます。 どうしてもわからずこちらに質問させて頂きました。。。 よろしくお願いいたします。。

    • 締切済み
    • PHP
  • 現在、Twitter APIを使用したプログラムに挑戦中です。

    現在、Twitter APIを使用したプログラムに挑戦中です。 OAuth認証を利用してTwitterに書き込みをするプログラムを作成中です。 とあるHPに掲載してあったサンプルプログラムをそのままコピペして テスト用として使用してみようとしたのですが、 認証のほうはうまく行っている様なのですが、 <?xml version="1.0" encoding="UTF-8" ?> - <hash> <request>/statuses/update.xml</request> <error>Could not authenticate you.</error> </hash> といったエラーメッセージが出てしまい、どのように対処すればいいのか分からず 困っています。 どなたか、分かる方はいらっしゃいませんか?

    • ベストアンサー
    • PHP
  • object(SimpleXMLElement)#9 (2) {~~エ

    object(SimpleXMLElement)#9 (2) {~~エラーが出ます Twitter でBot運営してます。 定期ポスト指定をしてから この表示が出ます。 リプライは、普通にできてます。 下記表示は、何を意味してるんでしょうか? 教えてください。 object(SimpleXMLElement)#9 (2) { ["request"]=> string(20) "/statuses/update.xml" ["error"]=> string(22) "Status is a duplicate." }

    • ベストアンサー
    • PHP