查看 Twitter 关于流 API 的文档,了解如何跟踪术语:
逗号分隔的短语列表,用于确定将在流中传递的推文。一个短语可以是一个或多个用空格分隔的术语,如果该短语中的所有术语都出现在推文中,则该短语将匹配,而不管顺序和忽略大小写。通过这个模型,您可以将逗号视为逻辑 OR,而空格等价于逻辑 AND(例如,'the twitter' 是 AND twitter,而 'the,twitter' 是 OR twitter)。
twitter-hbc
只允许跟踪用逗号分隔的术语,所以如果你这样做,
endpoint.trackTerms(Lists.newArrayList("@myTwitter", "#yolo"));
你实际上会做@myTwitter OR #yolo
,看看方法的实现trackTerms
,
/**
* @param terms a list of Strings to track. These strings should NOT be url-encoded.
*/
public StatusesFilterEndpoint trackTerms(List<String> terms) {
addPostParameter(Constants.TRACK_PARAM, Joiner.on(',').join(terms));
return this;
}
您可以像这样直接将术语添加到端点,而不是使用trackTerms
,
endpoint.addPostParameter(Constants.TRACK_PARAM, Joiner.on(' ').join(Lists.newArrayList("twitterapi", "#yolo")));
或者当然你可以创建一个新方法。
希望能帮助到你。