簡體   English   中英

當我沒有超過限制時為什么會出現異常?

[英]Why do I get an exception when I did not cross the limit?

轉推了15條推文后,我得到了一個例外的說法。

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 (https://support.twitter.com/articles/15364-about-twitter-limits
-update-api-dm-and-following).

message - Not authorized to use this endpoint.
code - 37

Relevant discussions can be found on the Internet at:
    http://www.google.co.jp/search?q=b029ad3d or
    http://www.google.co.jp/search?q=132d0e3b
TwitterException{exceptionCode=[b029ad3d-132d0e3b], statusCode=403, message=Not authorized to use this endpoint., code=37, retryAfter=-1, rateLimitStatus=null, version=3.0.6-SNAPSHOT(build: afd755d42f0c2fd7a2a87cedf1e91e123de2d754)}
    at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:162)
    at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:61)
    at twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:98)
    at twitter4j.TwitterImpl.post(TwitterImpl.java:2023)
    at twitter4j.TwitterImpl.retweetStatus(TwitterImpl.java:283)
    at org.tester.TweetSearcher.processRequest(TweetSearcher.java:73)
    at org.tester.TweetSearcher.doGet(TweetSearcher.java:100)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:964)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)

這可能是什么原因? 限制實際上是如何工作的?

推文的Java代碼:

            do {
            QueryResult result = twitter.search(new Query("#naples "));
            List<Status> statusList = result.getTweets();
            while(i.hasNext()) {
                Status s = (Status) i.next();
                long id = s.getId();
                c = new Counter();
                int totalUpdates = c.getUpdateCount();

                if(totalUpdates <= 30) { // continue to retweet
                    if(!s.isRetweeted() && !s.isRetweetedByMe()) {
                        twitter.retweetStatus(id);
                        totalUpdates++;
                        c.setUpdateCount(totalUpdates);
                    }
                } else { // Daily Limit Reached
                    limitReached = true;
                }
            }
        } while(!limitReached);

您必須查看此自動化規則和最佳實踐頁面。

自動轉發其他用戶

我們不鼓勵基於特定關鍵字自動轉發其他用戶,並且可能會暫停從事此行為的帳戶,特別是如果這些帳戶經常被阻止並報告為垃圾郵件時。

順便說一句,我想您必須給sleep()之類的功能來延遲每次重推。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM