Java 高温超导元件的怪异行为

Java 高温超导元件的怪异行为,java,cookies,httpclient,apache-httpcomponents,Java,Cookies,Httpclient,Apache Httpcomponents,我知道httpcomponents不是浏览器,但我只是用它从web服务器检索一些cookie。问题是,当我发送HTTP请求时,我不会得到与使用Firefox导航时相同的cookie集。该网站是www.amazon.com。我认为这很容易,但我不知道问题出在哪里。这是我的密码: DefaultHttpClient httpclient = new DefaultHttpClient(); HttpGet httpget = new HttpGet("http://www.amaz

我知道httpcomponents不是浏览器,但我只是用它从web服务器检索一些cookie。问题是,当我发送HTTP请求时,我不会得到与使用Firefox导航时相同的cookie集。该网站是www.amazon.com。我认为这很容易,但我不知道问题出在哪里。这是我的密码:

    DefaultHttpClient httpclient = new DefaultHttpClient();

    HttpGet httpget = new HttpGet("http://www.amazon.com");

    System.out.println("Initial set of cookies:");
    List<Cookie> cookies = httpclient.getCookieStore().getCookies();
    if (cookies.isEmpty()) {
        System.out.println("None");
    } else {
        for (int i = 0; i < cookies.size(); i++) {
            System.out.println("- " + cookies.get(i).toString());
        }
    }

    HttpResponse response = null;
    try {
        response = httpclient.execute(httpget);
    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    HttpEntity entity = response.getEntity();

    System.out.println("Post logon cookies:");
    cookies = httpclient.getCookieStore().getCookies();
    if (cookies.isEmpty()) {
        System.out.println("None");
    } else {
        for (int i = 0; i < cookies.size(); i++) {
            System.out.println("- " + cookies.get(i).toString());
        }
    }
DefaultHttpClient-httpclient=newdefaulthttpclient();
HttpGet HttpGet=新的HttpGet(“http://www.amazon.com");
System.out.println(“cookies的初始集:”);
列表cookies=httpclient.getCookieStore().getCookies();
if(cookies.isEmpty()){
系统输出打印项次(“无”);
}否则{
对于(int i=0;i
Amazon可能不允许你这样做(仔细阅读他们的T&C)。从技术角度看,您可能需要“表现得像浏览器”,检查Firefox发送到服务器的HTTP请求头并转储这些请求头…我已经用Firefox的
Live HTTP headers
附加组件检查了HTTP头。这真的很奇怪,因为HTTPComponents似乎卡在第一个重定向中,并且默认情况下激活了FOLLOW_重定向…someonte如何从标头响应中知道重定向url?(响应代码是200而不是3!)如果您想知道最终重定向url,请参阅