2017-04-24 11 views
1

私はアプリケーションのみの認証でリクエストを承認することに成功しました。しかし、REST APIを使ってツイートを投稿しようとしたとき。このエラーは、ツイートを投稿するアクセス権がないことに関連しています。だから私は研究を行い、Twitterはアプリ専用認証がツイートを投稿できないことを知った。TwitterでMeteorを使用してアプリケーションを使用する

「それはできません:投稿のつぶやきやその他のリソース;」

「あなたのアクセストークン」領域が見つかりました。私はそれを使ってツイートを投稿できますか?どうすれば使えますか?

また、同じ方法をコメントに使用できますか?

はここ

HTTP.call('POST', 'https://api.twitter.com/oauth2/token', { 
      params: { 'grant_type':'client_credentials'}, 
      headers: { 
       'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8', 
       'Authorization': 'Basic '+base64token 
      } 
     },function (error, response) { 
      if (!error && response.statusCode == 200) { 
       token = response.data.access_token; 
       HTTP.call('POST', 'https://api.twitter.com/1.1/statuses/update.json', { 
        params: { 'status':data.tweet}, 
        headers: { 
         'Authorization': 'Bearer '+token 
        } 
       },function (error, response) { 
        if (!error && response.statusCode == 200) { 
         console.log(response); 
        } else { 
         console.error(error.message); 
        } 
       }); 
      } else { 
       console.error(error.message); 
      } 
     }); 

答えて

2

それはあなたも、あなたがクライアントまたはサーバ側でそのコードを実行しているかどうかを言っていないなら、あなたに特定の何かを伝えるのは難しいですが、これまでの私のコードです。

しかし、サーバー側でTwitter APIを呼び出す場合(資格情報の漏洩を避ける必要があるため)、多くの特殊モジュールの1つを使用して、npmで利用できるTwitter APIとやりとりする必要があります。例については、この回答を参照してください。

あなたがここに明らかにそうである悩み、それを自分でやって持っている場合は特に、それを自分で再実装よりも仕事のための適切なツールを使用する方がはるかに簡単です。

+0

私は今、https://github.com/BoyCook/TwitterJSClientを使用しました。ウェブフックはどうですか?ツイーターの投稿を受け取る方法は? – JMA

+0

@JMA TwitterのストリーミングAPIを使用してつぶやきを聞くことができます。 https://github.com/SpiderStrategies/node-tweet-stream – rsp

関連する問題