Twitter API态度运营商不起作用

我一直在使用TwitterssearchAPI(通过node-twitter模块),我正在遇到一个态度运营商的问题。 我正在寻找有关某个主题的正面和负面推文。 目前虽然他们返回相同的结果。 这是我的代码,调用API。

// Add since ID for future requests twitterSearchClient.search( {'q' :'xmas+%3A%28', 'lang' : 'en', 'count' : 100, 'result_type': 'recent'}, function(error, result) { if (error) { console.log('Error: ' + (error.code ? error.code + ' ' + error.message : error.message)); } if (result) { var requestDetails = result.search_metadata; var results = result.statuses; var resultsLength = results.length; var r; var data; var d; console.log(resultsLength); for (var i=0; i<resultsLength; i++) { console.log(r.text); } } } ); 

正如你所看到的,我正在使用像文档中的示例一样的完全urlencoded值。 我也尝试使用圣诞节+%3A)正面和圣诞+%3A(负面,但这返回401未经授权的错误出于某种原因。

有没有人遇到这个问题或有一个解决scheme。

如果您有任何问题,我会很乐意回答

提前致谢。

根据Twitter的文档

请确保在提出请求之前对这些查询进行URL编码

当去那个url和input您的searchxmas :)我有这个查询

https://twitter.com/search?q=xmas%20%3A)

正如你可以看到xmas :) = xmas%20%3A)xmas :(结束了

https://twitter.com/search?q=xmas%20%3A(

xmas :( = xmas%20%3A(

如果你仍然没有得到不同的结果(你可以比较结果与上面的链接进行search时得到的结果),那么这不是查询,但也许你是如何进行呼叫。 如果是这样的话,将需要额外的信息。

在这种情况下,你有没有尝试过编码你的查询? 客户端可能正在为您编码。

 ... 'q': 'xmas :(', ... 

注意:您没有提及或链接到您正在使用哪个twitter客户端( 通过npm? )。


我不能说你的具体问题,当我通过网站上的表单search我得到不同的结果,并且查询是URI编码…当您传递input到远程查询string时,我会build议使用encodeURIComponent('xmas :)')为您的input值,这将产生最可预测的结果。