2017-03-21 2 views
0

https://github.com/desmondmorris/node-twitter에 트위터 노드 js 패키지를 사용 중입니다. 이미지를 업로드하는 데 문제가 있습니다 (간단한 트윗을 게시해도 문제가 발생하지 않음). 내가 수동으로 이미지를 다운로드 "알 수없는 미디어 유형"nodejs로 트위터에 이미지 업로드

: 나는 다음과 같은 오류를 받고 있어요

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

imageData를 로컬 파일에 작성하여 내용을 확인해 보았습니까? – amenadiel

+0

감사합니다. @amenadiel, 이것은 올바른 길로 나를 잡았습니다. 아래 답변보기 – otusweb

답변

0

요청 약속으로 이미지를 다운로드하려면이이진 데이터라고 지정해야합니다.

var promise = requestP({ 
     uri: tweet.imageURL, 
     encoding: null   //note addition here 
     })