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值,这将产生最可预测的结果。