我正在尝试从以下状态获取 rawJSOn 字符串:
TwitterObjectFactory.getRawJSON(status);
但它返回 null。我确实检查了 JSONStoreEnabled() 是否设置为 true 并且确实如此(如果不是,我会得到一个异常)。
对此感到非常困惑,因为文档没有描述任何可能的解决方案。
附注我确实通过调用 getText() 方法检查了我传递的 Status 对象是否有效,并且它确实返回了推文文本。
我正在尝试在接收 Status 对象的 Apache Storm Bolt 中执行此操作,并且我按如下方式使用该对象:
Status status = (Status)tuple.getValueByField("tweet");
谢谢
最佳答案
过去几天我也遇到了类似的问题。我不是该软件包的专家,但我发现这是 twitter4j 版本 4.0.3 的问题,特别是:
twitterObjectFactory.getRawJson(status)
我使用了 Twiiter4j 4.0.2 包,并且能够使用 DataObjectFactory.getRawJson(status)
检索原始 json。但是,您将收到一条弃用警告,我选择忽略该警告。
@SuppressWarnings("deprecation")
@Override
public void onStatus(Status status) {
System.out.println("@" + status.getUser().getScreenName()
+ " - " + status.getText());
tweetQueue.offer(DataObjectFactory.getRawJSON(status));
}
关于java - Twitter4J rawJSON() 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29130673/