2016-04-07 6 views
0

get/searchメソッドを使用してツイートを投稿するにはtwitter API postメソッドを使用しようとしています。しかし、検索の結果を下の変数 'st'に格納すると、それが機能せず、常にエラーが発生します。 「ST」を意味し、私はそれがしたいように正しく再割り当てされていないこと - 私はプログラムを実行すると(それは私が重複したつぶやきをつぶやきせませんので)twitter search APIのツイートを保存するにはどうすればいいですか?

var st = "test" //This is where I want to store the tweet found by calling search. 

var params = { 

q: 'hillary_clinton', 
count: 1, 
type: 'recent', 
geocode: " 38.913376,-95.3352939, 3mi" 
exclude_replies: true, 
retweeted: false, 

}; 

T.get('search/tweets', params, gotData); 

function gotData(err, data, response) { 
    var tweets = data.statuses; 
    st = tweets[0].text // store the first search result in 'st' 



} 

var tweet = { 

    status: st 

} 

T.post('statuses/update', tweet, tweeted); 

function tweeted(err, data, response) { 
if (err) { 
    console.log("It did not work") 
    console.log(data) 
    } else { 
console.log("it worked") 
} 

} 

しかし、エラーが常に発生します。どこが間違っていますか?

答えて

0

ツイートを検索すると、最初の5つの結果が返されますので、常にその5つの結果が得られ、stをツイートの配列の最初のツイートに設定したままにしてください。

あなたはいくつかのことができます。

アレイ全体をstとして保存してからループして、他のつぶやきを取得します。

は、IDと戻り値の結果は、指定されたID(つまり、より新しい、である)より大きい

「since_id」のようなあなたの次の検索のAPIパラメータの一部を使用してください。 APIを介してアクセスできるツイートの数には制限があります。 since_idからTweetsの制限が発生した場合、since_idは利用可能な最も古いIDに強制されます。

チェックアウトAPIのための他のパラメータの一部、ヒラリーは新しい何かをつぶやくするため

Twitter Search Docs

*もちろん、あなただけ待つことができるが、待ち時間の長すぎるすべきではありません...

+0

ただ1つのツイートを返すように変更しようとしましたが、まだstの再割り当ては受け付けません。私は実際には複数のつぶやきが必要ない。検索方法から見つかったツイートを 'st'に保存し、postメソッドを使用して自分自身にツイートしたいだけです。 –

+0

あなたはツイート配列をログに記録し、他のつぶやきを見ることができますか?つぶやく[1]にstを設定するとどうなりますか?違うの? – JordanHendrix

+0

私はちょうどそれをチェックして、st = tweet [0] .textを割り当てていますが、 "post"関数が呼び出され、stがパラメータとして渡されたときにもエラーが表示されます。それは状態が重複していると言います。私はそれがまだ「テスト」をツイートしていると思っていると推測しています。 –

関連する問題