2017-03-21 34 views
0

https://github.com/desmondmorris/node-twitterでtwitterノードjsパッケージを使用しています。画像をアップロードする際に問題が発生しています(シンプルなツイートは投稿しても問題ありません)。私は手動で画像をダウンロードした「認識できないメディアタイプ」nodejsでtwitterに画像をアップロード

:私は次のエラーを取得しています

var Twitter = require('twitter'), 
requestP = require('request-promise-native'); 

var twitterConfig = config.twitter; 
    twitterConfig.access_token_key = tweet.accessToken; 
    twitterConfig.access_token_secret = tweet.accessTokenSecret; 
    var twitter; 

    // first get the image data 
    var promise = requestP(tweet.imageURL) 
     .then(imageData => { 
     //then the image first 
     twitter = new Twitter(twitterConfig); 
     return twitter.post("media/upload", { 
      media: imageData 
     }, function (error, tweets, response) { 
      if (!error) { 
      console.log(tweets); 
      } 
     }); 
     }); 

:ここ

私のコードがあるが、最初のステップは、S3からイメージをダウンロードしていることに注意してくださいS3から、それは有効であるように私は問題が何であるか不明です。

+0

イメージデータをローカルファイルに書き込んでみてください。 – amenadiel

+0

ありがとう@amenadiel、これは正しい軌道に乗った。以下の答えを見てください – otusweb

答えて

0

リクエストを約束して画像をダウンロードするには、 というバイナリデータを指定する必要がありました。

var promise = requestP({ 
     uri: tweet.imageURL, 
     encoding: null   //note addition here 
     }) 
関連する問題