【问题标题】:Twiiter4J getDirectMessages() does not work anymore?Twiiter4J getDirectMessages() 不再起作用了?
【发布时间】:2017-05-03 20:57:34
【问题描述】:

我正在使用 Twitter4J 2.2.5(最新,尝试过其他版本)。并且根本无法获得直接消息。不久前使用相同的代码。我认为 Twitter 改变了一些东西。

我正在使用

Twitter.getDirectMessages()

它给出了以下错误。不知道为什么,如果我登录,我可以看到该帐户的直接消息,但总是收到此错误。限制错误没有意义,因为帐户没有接近限制。

其他 API 工作,例如 follower/fried/status/等。

403:The request is understood, but it has been refused. An accompanying error message will explain why. This code is used when requests are being denied due to update limits (http://support.twitter.com/forums/10711/entries/15364).
Relevant discussions can be on the Internet at:
    http://www.google.co.jp/search?q=00919618 or
    http://www.google.co.jp/search?q=332bf6ca
TwitterException{exceptionCode=[00919618-332bf6ca], statusCode=403, retryAfter=0, rateLimitStatus=RateLimitStatusJSONImpl{remainingHits=107, hourlyLimit=350, resetTimeInSeconds=1328297, secondsUntilReset=1116, resetTime=Fri Feb 03 14:39:45 EST 2012}, version=2.2.2}
    at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:189)
    at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:65)
    at twitter4j.internal.http.HttpClientWrapper.get(HttpClientWrapper.java:93)
    at twitter4j.TwitterImpl.get(TwitterImpl.java:1721)
    at twitter4j.TwitterImpl.getDirectMessages(TwitterImpl.java:874)
    at org.pandora.sense.twitter.TwitterDirectMessaging.checkDirectMessages(TwitterDirectMessaging.java:44)
    at org.pandora.sense.twitter.TwitterDirectMessaging.checkProfile(TwitterDirectMessaging.java:35)
    at org.pandora.sense.twitter.Twitter$1.run(Twitter.java:100)
    at java.lang.Thread.run(Thread.java:662)

【问题讨论】:

    标签: java twitter twitter4j


    【解决方案1】:

    Twitter 前段时间更改了直接消息的规则。应用必须经过用户特别授权才能访问直接消息。

    您确定这对您来说是正确的吗?您可以访问 twitter 网站并检查该应用程序。

    【讨论】:

      【解决方案2】:

      要获得直接消息,您应该尝试以下代码。它适用于我。

      getDirectMessages();给出直接消息的列表。我们需要放 for 循环 来获取每条消息的文本。

            List<DirectMessage> messages = twitter.getDirectMessages();
            for (DirectMessage message : messages) 
            {
                System.out.println(message.getText());
            }
      

      如果您遇到任何错误,请告诉我。

      【讨论】:

        猜你喜欢
        • 2017-02-19
        • 2022-11-10
        • 1970-01-01
        • 2022-06-12
        • 2014-01-13
        • 2018-11-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多