java - Twitter4j 回复推文不起作用

标签 java twitter twitter4j

我正在尝试使用 twitter4j 回复一条推文(我在 10 秒前发布),但它只是将其发布到时间线,而不是作为回复。

post = mainTwitter.updateStatus(...); //1st twitter account
StatusUpdate reply = new StatusUpdate(...);
try {
   reply.setInReplyToStatusId(post.getId());
   contextTwitter.updateStatus(reply); //2nd twitter account
} catch (TwitterException e) {
   System.err.println("Couldn't post context");
   e.printStackTrace();
}

id 不是-1,它是正确的长值。没有抛出异常。

最佳答案

您可以使用以下代码使您的代码片段正常工作

public void init() {
    ConfigurationBuilder cb = new ConfigurationBuilder();
    cb.setDebugEnabled(true)
      .setOAuthConsumerKey(TWITTER_CONSUMER_KEY)
      .setOAuthConsumerSecret(TWITTER_CONSUMER_SECRET)
      .setOAuthAccessToken(TWITTER_ACCESS_TOKEN)
      .setOAuthAccessTokenSecret(TWITTER_ACCESS_SECRET);
    TwitterFactory tf = new TwitterFactory(cb.build());
    twitter = tf.getInstance();
}


/***
 * 
 * @param tweetId : tweet Id
 * @param messgae : Reply message
 * @return
 * @throws TwitterException
 */
public String reply(String tweetId, String messgae ) throws TwitterException {
        Status status = twitter.showStatus(Long.parseLong(tweetId));
        Status reply = twitter.updateStatus(new StatusUpdate(" @" + status.getUser().getScreenName() + " "+ messgae).inReplyToStatusId(status.getId()));
    return Long.toString(reply.getId());
}

用法:

reply("930497966443454464", " Hello Eva")

关于java - Twitter4j 回复推文不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47209904/

相关文章:

android - 推特连接失败

java.lang.ClassCastException : com. google.gson.internal.LinkedTreeMap 无法转换为模型

java - 尽管确认传递的数据缓冲区足够长,但 glTexSubImage2D() 导致 EXCEPTION_ACCESS_VIOLATION (0xc0000005)

api - 是否可以从Twitter API缩短url?

javascript - 今天在 twitter.com 上的 XSS onmouseover 漏洞

java - 一段时间后杀死java中的线程

java - 如何在 JavaFX 中将 SimpleLocalizedStringProperty (controlsfx-plugin) 与 ResourceBundle 结合使用

java 获取 *NIX 上非当前用户的用户主目录

python - 属性错误 : 'float' object has no attribute 'lower'

java - twitter4j 分页页面如何工作?