2016-09-19 98 views
0

我在接收來自get調用Twitter的工作輸出時遇到問題。Node.js - NPM Twitter包 - client.get問題

這裏是我的代碼,並導致錯誤:

var twitter = require('twitter'); 

var twit = new twitter({ 
    consumer_key: '...', (removed keys and secrets) 
    consumer_secret: '...', 
    access_token_key: '...', 
    access_token_secret: '...' 
}); 

twit.get('trends/place', 1, function(error, data, response) { 
    if(error) { 
    throw error; 
    } 
    var parseTrend = JSON.parse(data); 
    console.log(parseTrend); 
}); 

這殺死了我的代碼,並拋出一個 「錯誤」:[對象的對象]

第二個get方法:

twit.get('search/tweets', {q: 'node.js'}, function(error, tweets, response) { 
    var parseTrend = JSON.parse(tweets); 
    console.log(parseTrend); 
    console.log(tweets.length); 
}); 

這會導致一個錯誤:狀態碼:406

我是否在做錯我的同事稅或者npm包的get方法在這個時候可能存在問題?

值得注意的是,我還使用了client.stream()方法,該方法工作得非常完美。 所以我不認爲我有關鍵或oAuth的任何問題。

其他人有問題嗎?

+0

我承認只使用了twit模塊。但基於文檔,該模塊似乎將對象的鍵/值對轉換爲URL參數。你嘗試傳遞一個'id'屬性設置爲'1'的對象作爲你的'trends/place'調用的第二個參數嗎? – litel

+0

剛試過:'twit.get('trends/place',{id:1},函數(error,data,response)',但它返回狀態代碼:406錯誤,像其他get方法一樣 –

+0

也試過該屬性作爲字符串「'{id:'1'}'並且導致相同。 –

回答

0

您是否與其他Twitter客戶端有同樣的問題?有a lot of Twitter modules in Node,並不是所有人都以同樣的方式工作。

在得到這些模塊中的某個模塊的奇怪問題後,我會建議先嚐試其他模塊,看看問題是否仍然存在。