在点击url获得Twitter追随者/朋友的随机时间上获得HTTP 400-java

在点击url获得Twitter追随者/朋友的随机时间上获得HTTP 400-java,java,twitter,urlconnection,Java,Twitter,Urlconnection,我正在Twitter上开发一个应用程序 推特给了我400个随机时间的回复。我很惊慌。他们的服务器太差,无法接受请求。我正在点击他们的REST URL以获得带有光标的关注者。有些时候,我得到了前100个追随者,在第二次游标迭代中,我得到了HTTP400 只有一次尝试,我就有了300名追随者。否则全部以HTTP代码400结束。我正在使用递归。基于下一个光标的值,直到它达到0。我一直在用它的值点击URL,以获得下一页的关注者 你们有什么建议?如何克服这种情况。twitter服务器在回复方面表现不佳。他

我正在Twitter上开发一个应用程序

推特给了我400个随机时间的回复。我很惊慌。他们的服务器太差,无法接受请求。我正在点击他们的REST URL以获得带有光标的关注者。有些时候,我得到了前100个追随者,在第二次游标迭代中,我得到了HTTP400

只有一次尝试,我就有了300名追随者。否则全部以HTTP代码400结束。我正在使用递归。基于下一个光标的值,直到它达到0。我一直在用它的值点击URL,以获得下一页的关注者

你们有什么建议?如何克服这种情况。twitter服务器在回复方面表现不佳。他们错误地邀请开发人员在其上开发应用程序

是我做错了什么。或者完全是推特的问题

import java.io.ByteArrayInputStream;
导入java.io.DataInputStream; 导入java.net.URL; 导入java.net.URLConnection; 导入java.util.ArrayList; 导入java.util.List

导入org.jdom.Document; 导入org.jdom.Element; 导入org.jdom.input.SAXBuilder

公共级行波管{

String urlFlwrs= "http://twitter.com/statuses/followers/tahirakram.xml?cursor=";

List followers = new ArrayList();
long cursorCounter = -1;

public static void main(String[] args) {
    long start = System.currentTimeMillis();
    new Twt().readFollowFriends();
    System.out.printf("Total Time: %d secs", (System.currentTimeMillis() - start)/1000);        
}

void readFollowFriends(){
    try {
        StringBuffer followersData = new StringBuffer();
        /* use urlFrnds as a parameter if you want to fetch friends */ 
        URL url = new URL(urlFlwrs+cursorCounter);
        URLConnection urlConnection = url.openConnection();
        DataInputStream dis = new DataInputStream(urlConnection.getInputStream());
        String inputLine;
        while ((inputLine = dis.readLine()) != null) {
            followersData.append(inputLine);
        }

        SAXBuilder builder = new SAXBuilder();
        Document document = builder.build(new ByteArrayInputStream(followersData.toString().getBytes()));

        Element root = document.getRootElement();
        Element usersElm = root.getChild("users");          
        Element nextCursor = root.getChild("next_cursor");
        List users = usersElm.getChildren("user");

        for (int c = 0; c < users.size(); c++) {
            Element user = (Element) users.get(c);
            Element name = user.getChild("name");

            System.out.println(name.getText());
        }

        if (nextCursor != null){
            cursorCounter = Long.parseLong(nextCursor.getText());

            if (cursorCounter != 0)
                readFollowFriends();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

出于兴趣,您是否尝试了不带“?cursor=”的URL,因为这可能会解决您的问题。另外,如果您可以发布整个函数,这可以帮助我解决您的小问题Hi Lee,我已经更新了我的代码。整个类都可用。运行它,如果您可以告诉我解决此异常需要做什么。
    java.io.IOException: Server returned HTTP response code: 400 for URL:http://twitter.com/statuses/followers/tahirakram.xml?cursor=1312316779756149406
     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1133)
     at Twt.readFollowFriends(Twt.java:32)
     at Twt.readFollowFriends(Twt.java:62)
     at Twt.readFollowFriends(Twt.java:62)
     at Twt.main(Twt.java:15)