2013-03-25 3 views
1

Ниже код, что я пытался до сих пор:не удается загрузить файл с помощью HttpClient

try{ 
      DefaultHttpClient httpclient = new DefaultHttpClient(); 

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

      HttpResponse response = httpclient.execute(httpget); 
      HttpEntity entity = response.getEntity(); 

      System.out.println("Login form get: " + response.getStatusLine()); 
      if (entity != null) { 
       entity.consumeContent();    
      } 
      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()); 
       } 
      } 

      HttpPost httpost = new HttpPost("http://www.somewebsite.com/MemberSingIn"); 

      List<NameValuePair> nvps = new ArrayList<NameValuePair>(); 
      nvps.add(new BasicNameValuePair("email", "USERNAME")); 
      nvps.add(new BasicNameValuePair("password", "PASSWORD")); 
      nvps.add(new BasicNameValuePair("rememberMe", "true")); 

      httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8)); 

      response = httpclient.execute(httpost); 
      entity = response.getEntity(); 

      System.out.println("Login form get: " + response.getStatusLine()); 
      if (entity != null) { 
       entity.consumeContent(); 
      } 

      System.out.println("Post logon cookies:"); 
      cookies = httpclient.getCookieStore().getCookies(); 
      String mySessionId = null; 
      if (cookies.isEmpty()) { 
       System.out.println("None"); 
      } else { 
       for (int i = 0; i < cookies.size(); i++) { 
        if(cookies.get(i).toString().contains("SessionId=")){ 
         int index1 = cookies.get(i).toString().indexOf("SessionId"); 
         String temp = cookies.get(i).toString().substring(index1); 
         int index2 = temp.toString().indexOf("]"); 
         temp = cookies.get(i).toString().substring(index1+10,index1+index2); 
         mySessionId = temp; 
        } 
        System.out.println("- " + cookies.get(i).toString()); 
       } 
      }  

      CookieStore cookieStore = new BasicCookieStore(); 
      BasicClientCookie cookie = new BasicClientCookie("Cookie",mySessionId); 

      cookieStore.addCookie(cookie); 
      httpclient.setCookieStore(cookieStore); 

      httpget = new HttpGet("http://somewebsite.URLTOGETFILE/eTable.txt"); 
      response = httpclient.execute(httpget); 
      entity = response.getEntity(); 
      System.out.println("HEREEEEEEEEEEEEEEEEEEE"); 
      System.out.println(response.toString()); 

      System.out.println("File get: " + response.getStatusLine()); 

      InputStream in = entity.getContent(); 


       File path = new File("/home/mrsevensevenseven/"); 
       path.mkdirs(); 
       File file = new File(path, "myfile.txt"); 
       FileOutputStream fos = new FileOutputStream(file); 

       byte[] buffer = new byte[1024]; 
       int len1 = 0; 
       while ((len1 = in.read(buffer)) > 0) { 
         fos.write(buffer, 0, len1); 
       } 

       fos.close(); 

      httpclient.getConnectionManager().shutdown(); 
     }catch(Exception e){ 
      e.printStackTrace(); 
     } 

Он успешно, регистрирует меня, но я не могу еще загрузить файл ... Любая помощь в этой связи будет очень ценится .. Я пробовал много на переполнение стека и прибегая к помощи вокруг, но не могли получить помощь ..

и это ответ ...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" > 
<head><title> 
    IBD eTables - Investors.com 
</title><meta property="og:title" content="IBD eTables" /><meta property="og:type" content="article" /><meta property="og:url" content="http://research.investors.com/etables/default.aspx" /><meta property="og:image" content="http://www1.ibdcd.com/images/IBDicon_309171.png" /><meta property="og:site_name" content="Investor's Business Daily" /><meta property="fb:app_id" content="154916351273272" /> 

    <script type="text/javascript"> 
     var divHeight; 
    </script> 
<link href="../App_Themes/eTables/eTablesStyles.css" type="text/css" rel="stylesheet" /> 
    <script type="text/javascript" src="/Scripts/global.js?v=4"></script> 

    <script type="text/javascript" src="/Scripts/Silverlight.js?v=4"></script> 

    <script type="text/javascript" src="/Scripts/LaunchMSTool.js?v=4"></script> 
</head> 

<body> 
<form name="form1" method="post" action="/etables/default.aspx" id="form1"> 
<div> 
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTExMzcwMDM5OTcPFhIeDEVuYWJsZUV4cG9ydGceC0N1cnJlbnRWaWV3AgEeDUN1cnJlbnRWaWV3SWQoKVtTeXN0ZW0uRGVjaW1hbCwgbXNjb3JsaWIsIFZlcnNpb249Mi4wLjAuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1iNzdhNWM1NjE5MzRlMDg5ATEeDWJzaG93aWJkY2hhcnRnHhBEaXNwbGF5QmFubmVyRVRCaB4LU29ydENvbHVtbjJlHgpTb3J0Q29sdW1uBQppYmQxMDByYW5rHgpTb3J0QXNjZW5kaB4GVGFiQ21kBQtJQkQxMDBJbmRleBYCAgEQZGQWBAIHDw8WAh4ISW1hZ2VVcmwFMmh0dHA6Ly93d3cuaW52ZXN0b3JzLmNvbS9pbWFnZS9iZ2VUYWJsZXNTbS5wbmcuY21zZGQCCA8PFgIeB1Zpc2libGVoZBYeAgcPZBYGAgEQDxYCHgtOYXZpZ2F0ZVVybAWVAWh0dHA6Ly9yZXNlYXJjaC5pbnZlc3RvcnMuY29tL2V0YWJsZXMvSUJENTBJbmRleFByaW50LmFzcHg/dGFiVmlldz1JQkQ1MCZjb2x1bW5zb3J0MT1pYmQ1MHJhbmsmY29sdW1uc29ydHR5cGUxPURFU0MmY29sdW1uc29ydDI9JmNvbHVtbnNvcnR0eXBlMj1ERVNDZGRkAgMQDxYCHwsFmwFodHRwOi8vcmVzZWFyY2guaW52ZXN0b3JzLmNvbS9ldGFibGVzL0lCRDUwWExTLmFzcHg/dGFiVmlldz1JQkQ1MCZmcm9tPWV0YWJsZXMmY29sdW1uc29ydDE9aWJkNTByYW5rJmNvbHVtbnNvcnR0eXBlMT1ERVNDJmNvbHVtbnNvcnQyPSZjb2x1bW5zb3J0dHlwZTI9REVTQ2RkZAIFEA8WAh8LBY4BaHR0cDovL3Jlc2VhcmNoLmludmVzdG9ycy5jb20vZXRhYmxlcy9WaWV3VGV4dC5hc3B4P3RhYlZpZXc9SUJENTAmY29sdW1uc29ydDE9aWJkNTByYW5rJmNvbHVtbnNvcnR0eXBlMT1ERVNDJmNvbHVtbnNvcnQyPSZjb2x1bW5zb3J0dHlwZTI9REVTQ2RkZAIIDw8WAh8KaGRkAgkPDxYCHwpoZBYGAgEPFgIeBFRleHQFHllvdSBoYXZlIG5vIHNhdmVkIHN0b2NrIGxpc3RzLmQCAxAPFgIfCwUlfi9NeUlCRC9FZGl0UG9ydGZvbGlvLmFzcHg/YWN0aW9uPW5ld2RkZAIEDxYCHwwFEiB0byBjcmVhdGUgYSBsaXN0LmQCCw9kFgICAQ9kFgICAQ8PFgIeCUluZGV4VHlwZQUCVERkFgJmD2QWAmYPZBYGAgEPDxYCHwwFEklCRCAxMDAgdnMgUyZQIDUwMBYCHgVzdHlsZQUQZm9udC1zaXplOiAxMnB4O2QCAw8PFgIfDAUbRnJvbSAzLzI1LzIwMTMgdG8gMy8yNS8yMDEzFgIfDgUQZm9udC1zaXplOiAxMXB4O2QCBw8PFgQfDAUXVmlldyBUcmFpbGluZyAxMiBNb250aHMeD0NvbW1hbmRBcmd1bWVudAUDTTEyZGQCEg8PFgIfCmhkZAITDw8WAh8KaGRkAhUPDxYCHwwFNEJlbG93IGlzIHRoZSBJQkQgNTAgSW5kZXggZm9yIHRoZSB3ZWVrIG9mIDMvMjIvMjAxMypkZAIZD2QWBgIBDw8WAh8MZWRkAgUPDxYCHwpoZGQCBw8QDxYCHwpoZGQWAWZkAhoPDxYCHwpnZBYCAgEPZBYGZg9kFgJmDxYCHgtfIUl0ZW1Db3VudAIBFgICAQ9kFgQCAQ8WAh8MBQczLzIyLzEzZAIDEA8WBB8MBTJZb3UgQ2FuIFN0aWxsIEZpbmQgQnV5YWJsZSBMZWFkZXJzIEluIFN0b2NrIE1hcmtldB8LBWxodHRwOi8vbmV3cy5pbnZlc3RvcnMuY29tL2ludmVzdGluZy1pbnNpZGUtdGhlLTUwLzAzMjIxMy02NDkwNzQtc3RvY2stbWFya2V0LWxlYWRlcnMtc3RpbGwtb2ZmZXItZW50cmllcy5odG1kZGQCAg9kFgJmDxYCHxACAhYEAgEPZBYCAgEQDxYEHwwFL0x1bWJlciBMaXF1aWRhdG9ycyBSZWJvdW5kcyBXaXRoIEhvdXNpbmcgTWFya2V0HwsFV2h0dHA6Ly9uZXdzLmludmVzdG9ycy5jb20vaW52ZXN0aW5nLzAzMjIxMy02NDkwNzctbHVtYmVyLWxpcXVpZGF0b3JzLW9mZmVycy1hLWZsb29yLmh0bWRkZAICD2QWAgIBEA8WBB8MBShJeGlhJ3MgUmVzdWx0cyBBbW9uZyBJdHMgSW5kdXN0cnkncyBCZXN0HwsFVmh0dHA6Ly9uZXdzLmludmVzdG9ycy5jb20vaW52ZXN0aW5nLzAzMjIxMy02NDkwNzUtaXhpYS1hLWxlYWRlci1pbi1uZXR3b3JrLXRlc3RpbmcuaHRtZGRkAgQPZBYCAgEPFgIfCmcWAgIBEA8WBB8MBQRMTktEHwsFiwFodHRwOi8vZWR1Y2F0aW9uLmludmVzdG9ycy5jb20vZGFpbHktc3RvY2stYW5hbHlzaXMvMDMyMjEzLTY0OTAxNC1ob3ctaW52ZXN0b3JzLWNvdWxkLWhhdmUtaG9va2VkLXVwLXdpdGgtbGlua2VkaW4tYmVmb3JlLWl0cy1iaWctbW92ZS5hc3B4ZGRkAhsPDxYCHwpnZBYCZg9kFgJmD2QWAmYQDxYCHwsFQWh0dHA6Ly93d3cuaW52ZXN0b3JzLmNvbS9pbWFnZS9ldGFibGVzL2liZDUwL2liZDUwXzAzMjIxMy5wZGYuY21zZGRkAh0PDxYQHgtVc2VyU2VjTGlzdGUeDVVzZXJTZWNMaXN0SWQoKwQBMh8BAgEeD0N1cnJlbnRUYWJJbmRleGYeDUN1cnJlbnRUYWJDbWQFC0lCRDEwMEluZGV4HgxVc2VyUHJpbUxpc3RlHg5Vc2VyUHJpbUxpc3RJZCgrBAExHhNDdXJyZW50Vmlld1Bvc2l0aW9uKCsEATFkFgZmDxYCHxACBhYMAgEPZBYEZg8VAQlhY3RpdmV0YWJkAgEPDxYGHghDc3NDbGFzcwUJdGFiYWN0aXZlHgtDb21tYW5kTmFtZQULSUJEMTAwSW5kZXgeBF8hU0ICAmQWAmYPFQEMSUJEIDUwIEluZGV4ZAIDD2QWBGYPFQELaW5hY3RpdmV0YWJkAgEPDxYGHxgFC3RhYmluYWN0aXZlHxkFEklCRE5ld0FtZXJpY2FJbmRleB8aAgJkFgJmDxUBFUlCRCBOZXcgQW1lcmljYSBJbmRleGQCBQ9kFgRmDxUBC2luYWN0aXZldGFiZAIBDw8WBh8YBQt0YWJpbmFjdGl2ZR8ZBQ1JQkQ4NS04NUluZGV4HxoCAmQWAmYPFQEPSUJEIDg1LTg1IEluZGV4ZAIHD2QWBGYPFQELaW5hY3RpdmV0YWJkAgEPDxYGHxgFC3RhYmluYWN0aXZlHxkFC0lCREJpZ0NhcDIwHxoCAmQWAmYPFQEOSUJEIEJpZyBDYXAgMjBkAgkPZBYEZg8VAQtpbmFjdGl2ZXRhYmQCAQ8PFgYfGAULdGFiaW5hY3RpdmUfGQUKTWFpblRhYmxlcx8aAgJkFgJmDxUBC01haW4gVGFibGVzZAILD2QWBGYPFQELaW5hY3RpdmV0YWJkAgEPDxYGHxgFC3RhYmluYWN0aXZlHxkFCU15ZVRhYmxlcx8aAgJkFgJmDxUBCk15IGVUYWJsZXNkAgIPZBYIAgEPDxYCHwpoZGQCAw8PFgIfDAUeVmlldyBJQkQgNTAgSW5kZXggU3RvY2sgVGFibGVzZGQCBQ8PFgQfDAUlVmlldyBJQkQgNTAgSW5kZXggRXhwYW5kZWQgU3RvY2sgRGF0YR8PBQEyZGQCBw8PFgIfCmhkZAIEDw8WAh8KaGRkAh4PZBYCZg9kFgoCAQ8QDxYGHg1EYXRhVGV4dEZpZWxkBQROYW1lHg5EYXRhVmFsdWVGaWVsZAUJZVRhYmxlQ29sHgtfIURhdGFCb3VuZGdkEBUYBFJhbmsXU21hcnRTZWxlY3QgQ29tcCBSYXRpbmcKRVBTIFJhdGluZwlSUyBSYXRpbmcRSW5kdXN0cnkgR3JvdXAgUlMKU01SIFJhdGluZw5BY2MvRGlzIFJhdGluZww1Mi1XZWVrIEhpZ2gNQ2xvc2luZyBQcmljZQ5QcmljZSAkIENoYW5nZQ9Wb2x1bWUgJSBDaGFuZ2UNVm9sdW1lICgxMDAwKQJQRQtTcG9uIFJhdGluZwlEaXYgWWllbGQKJSBPZmYgSGlnaBZBbm4uIEVQUyBFc3QuICUgQ2hhbmdlEkxhc3QgUXRyIEVQUyAlIENoZxJOZXh0IFF0ciBFUFMgJSBDaGcSTGFzdCBRdHIgU2FsZXMgQ2hnEFJldHVybiBPbiBFcXVpdHkNUHJldGF4IE1hcmdpbgxNbmdtdCBPd25zICURUXRyIEVQUyBDbnQgPiAxNSUVGAppYmQxMDByYW5rCmNvbXByYXRpbmcHZXBzcmFuawVyZWxzdAZncnBzdHIDc21yBmFjY2RpcwR5cmhpCnByaWNlY2xvc2UIcHJpY2VjaGcKdm9scGVyY2NoZwhkYWlseXZvbAdwZXJhdGlvCnNwb25yYXRpbmcGZGl2eWxkCnBvZmY1MndraGkJYW5uZXN0Y2hnCXF0cmVybmNoZwlxdHJlc3RjaGcJcXRyc2FsY2hnA3JlcQxwcmV0YXhtYXJnaW4Fc21tZ3QJcXRyY250ZXBzFCsDGGdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZxYBZmQCAw8QZGQWAQIBZAIFDxAPFgYfGwUETmFtZR8cBQllVGFibGVDb2wfHWdkEBUZA04vQQRSYW5rF1NtYXJ0U2VsZWN0IENvbXAgUmF0aW5nCkVQUyBSYXRpbmcJUlMgUmF0aW5nEUluZHVzdHJ5IEdyb3VwIFJTClNNUiBSYXRpbmcOQWNjL0RpcyBSYXRpbmcMNTItV2VlayBIaWdoDUNsb3NpbmcgUHJpY2UOUHJpY2UgJCBDaGFuZ2UPVm9sdW1lICUgQ2hhbmdlDVZvbHVtZSAoMTAwMCkCUEULU3BvbiBSYXRpbmcJRGl2IFlpZWxkCiUgT2ZmIEhpZ2gWQW5uLiBFUFMgRXN0LiAlIENoYW5nZRJMYXN0IFF0ciBFUFMgJSBDaGcSTmV4dCBRdHIgRVBTICUgQ2hnEkxhc3QgUXRyIFNhbGVzIENoZxBSZXR1cm4gT24gRXF1aXR5DVByZXRheCBNYXJnaW4MTW5nbXQgT3ducyAlEVF0ciBFUFMgQ250ID4gMTUlFRkACmliZDEwMHJhbmsKY29tcHJhdGluZwdlcHNyYW5rBXJlbHN0BmdycHN0cgNzbXIGYWNjZGlzBHlyaGkKcHJpY2VjbG9zZQhwcmljZWNoZwp2b2xwZXJjY2hnCGRhaWx5dm9sB3BlcmF0aW8Kc3BvbnJhdGluZwZkaXZ5bGQKcG9mZjUyd2toaQlhbm5lc3RjaGcJcXRyZXJuY2hnCXF0cmVzdGNoZwlxdHJzYWxjaGcDcmVxDHByZXRheG1hcmdpbgVzbW1ndAlxdHJjbnRlcHMUKwMZZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZxYBZmQCBw8PFgIfCmhkZAIJDxBkZBYBAgFkAh8PZBYCAgIPZBYEAgEPFgIfEAIRFiICAQ9kFgJmDxUBVTxpbWcgc3JjPSJodHRwOi8vd3d3MS5pYmRjZC5jb20vaW1hZ2VzL2VUYWJsZXMvc3RhMXN0ZHNjLmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgIPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgMPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgQPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgUPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgYPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgcPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAggPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgkPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgoPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgsPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgwPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAg0PZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAg4PZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAg8PZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAhAPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAhEPZBYCZg8VAU48aW1nIHNyYz0iaHR0cDovL3d3dzEuaWJkY2QuY29tL2ltYWdlcy9lVGFibGVzL3B4LmdpZiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj5kAgMPFgIfEAIRFiICAQ9kFgJmDxUBBFJhbmtkAgIPZBYCZg8VAR1TbWFydFNlbGVjdDxicj5Db21wPGJyPlJhdGluZ2QCAw9kFgJmDxUBDUVQUzxicj5SYXRpbmdkAgQPZBYCZg8VAQxSUzxicj5SYXRpbmdkAgUPZBYCZg8VASFJbmQgR3JvdXA8YnI+UmVsYXRpdmU8YnI+U3RyZW5ndGhkAgYPZBYCZg8VAQ1TTVI8YnI+UmF0aW5nZAIHD2QWAmYPFQERQWNjL0Rpczxicj5SYXRpbmdkAggPZBYCZg8VAQ81Mi1XZWVrPGJyPkhpZ2hkAgkPZBYCZg8VARBDbG9zaW5nPGJyPlByaWNlZAIKD2QWAmYPFQERUHJpY2UgJDxicj5DaGFuZ2VkAgsPZBYCZg8VARJWb2x1bWUgJTxicj5DaGFuZ2VkAgwPZBYCZg8VAQ5Wb2wuPGJyPigxMDAwKWQCDQ9kFgJmDxUBAlBFZAIOD2QWAmYPFQEOU3Bvbjxicj5SYXRpbmdkAg8PZBYCZg8VAQxEaXY8YnI+WWllbGRkAhAPZBYCZg8VAQVOb3Rlc2QCEQ9kFgJmDxUBGEFkZGl0aW9uYWwmbmJzcDtSZXNlYXJjaGQCIQ8WAh8KaGQCIg8PFgIfCmdkFgICAQ8PFgIfDAXUASogSUJEIDUwIHN0b2NrcywgcmFua2luZ3MsIGNvbXBhbnkgc3VtbWFyaWVzLCBhbmQgY2hhcnQgYW5hbHlzaXMgd2VyZSBsYXN0IHVwZGF0ZWQgMy8yMi8yMDEzLCBhbmQgYXJlIHVwZGF0ZWQgd2Vla2x5LiBPdGhlciBJQkQgNTAgZGF0YSBmZWF0dXJlcywgaW5jbHVkaW5nIHByaWNlLCB2b2x1bWUgYW5kIFNtYXJ0U2VsZWN0IFJhdGluZ3MgYXJlIHVwZGF0ZWQgZGFpbHkuZGQYBQUPSGVhZGVyTXVsdGlWaWV3Dw9kAgJkBQ9SZXN1bHRNdWx0aVZpZXcPD2QCAWQFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYBBRZJbmRleEJhckNoYXJ0JHdjdkNoYXJ0BQ1NdWx0aVZpZXdTb3J0Dw9kZmQFCk11bHRpVmlldzEPD2RmZB2Z4W+QIKnJSe4+7+2PiFBPu1ck" /> 
</div> 


<script src="/ScriptResource.axd?d=RNfHbK6XxGlvk7UnQPQl5VWdSmPtL605im1i9ZMMuXgrvwYOrYkRhhjS5Tkc95LZKqMA01lmkm3Rvv6OCYTXQO0Wvej6DzniFUlixhkXWzmpvwOMQ0v-ompHlYoQzp1H0LzWltEL_D_EvsXg_ayZnY1oHnA1&amp;t=ffffffff8dc250fc" type="text/javascript"></script> 
<script src="../Services/SiteAjaxService.asmx/js" type="text/javascript"></script> 






<a id="hlRoadBlock" class="ex5trigger" rel="/Register/Roadblock.aspx?id=ETB&closepop=1" href="javascript:void(0);"></a> 

    <a id="hlSignInRoadBlock" class="ex5trigger" rel="/Register/WeeklyEmails.aspx?id=etb" href="javascript:void(0);"></a>    

    <script type="text/javascript"> 
     var isEntitled = ToBoolean("false"); 
     var isWeekly = ToBoolean("false"); 
    </script> 
    <script type="text/javascript" src="/Scripts/ExternalScripts/eTables.js"></script> 


<div id="etbtop"></div> 
<div id="etbmiddle"> 
    <div id="etbDummyImage" style="display:none;"> 
     <img id="staticeTableImage" src="http://www.investors.com/image/bgeTablesSm.png.cms" style="border-width:0px;" /> 
    </div> 
    <div id="etbcontent" style="display:none;"> 

    </div> 
</div> 

<div id="etbbottom"></div> 
<div class="jqmWindow" id="ex5"></div> 





<script type="text/javascript"> 
//<![CDATA[ 
var iLoginFlag = 0;var sAccess = "PVC";var sDGOProductsSite = "premium.investors.com";//]]> 
</script> 
</form> 

    <!-- BEGIN: Site Tagging --> 
    <script type="text/javascript" language="javaScript">if (typeof(s) != 'undefined'){s.server="IBDWEB21";s.events="";s.channel="Stock Research";s.pageName="";s.pageType="";s.hier1="Stock Research,eTables";s.products="";s.state="";s.zip="";s.purchaseID="";s.prop1="";s.prop2="";s.prop3="eTables";s.prop4="";s.prop5="";s.prop6="";s.prop7="";s.prop8="";s.prop9="";s.prop10="Tools";s.prop11="";s.prop12="Visitor";s.prop13="";s.prop14="";s.prop15="";s.prop16="eTables";s.prop17="";s.prop18="";s.prop19="";s.prop20="";s.prop21="";s.prop22="";s.prop23="";s.prop24="";s.prop32="";s.prop33="";s.prop34="";s.prop35="";s.prop36="";s.prop37="";s.prop38="";s.prop39="";s.prop40="";s.prop41="";s.prop42="";s.prop43="";s.prop44="";s.prop45="";s.prop46="";s.prop47="";s.prop48="";s.prop49="";s.eVar1="";s.eVar2="";s.eVar3="";s.eVar4="";s.eVar5="";s.eVar6="";s.eVar7="";s.eVar8="";s.eVar9="";s.eVar10="";s.eVar11="Visitor";s.eVar12="";s.eVar13="";s.eVar14="";s.eVar15="";s.eVar16="eTables";s.eVar17="";s.eVar18="";s.eVar19="";s.eVar20="";s.eVar21="";s.eVar22="";s.eVar23="";s.eVar24="";s.eVar25="";s.eVar26="";s.eVar27="";s.eVar28="";s.eVar29="";s.eVar30="";s.eVar31="";s.eVar32="";s.eVar33="";s.eVar34="";}</script> 
    <script type="text/javascript" language="javascript"> 
    // custom variables 
    if (typeof(s) != 'undefined') 
    { 
     s.pageName = "eTables - IBD 50 Index - Standard Stock Data"; 
    } 
    </script> 
    <script type="text/javascript" language="javaScript">if (typeof(s) != 'undefined'){try{var s_code=s.t();if(s_code){document.write(s_code);}}catch(e){}}</script> 
    <!-- END: Site Tagging --> 


    <script type="text/javascript" src="/Scripts/etables.js?v=4"></script> 

    <script type="text/javascript" src="/Scripts/ResearchAddToStockList.js?v=4"></script> 


    <a id="ServerTagLink" href="http://IBDWEB21"> 
     <img src="http://www1.ibdcd.com/Images/eTables/px.gif" width="20" height="20" alt="" /> 
    </a> 



    <script type="text/javascript"> 
     document.write(unescape("%3Cscript src='" + (document.location.protocol == "https:" ? "https://sb" : "http://b") + ".scorecardresearch.com/beacon.js' %3E%3C/script%3E")); 
    </script> 
    <script type="text/javascript"> 
     COMSCORE.beacon({c1:2,c2:7592510,c3:"",c4:"",c5:"",c6:"",c15:""}); 
    </script> 
    <noscript> 
     <img src="http://b.scorecardresearch.com/p?c1=2&c2=7592510&c3=&c4=&c5=&c6=&c15=&cj=1" alt="" /> 
    </noscript> 

</body> 
</html> 

с уважением ...

Mr.777

+0

Вероятно, не реальная проблема, но эта строка должна быть 'while ((len1 = in.read (buffer))! = -1) {' – jdb

+0

И почему я Это так? Я думаю, что отрицательное число - это EOF, не так ли? – dosdebug

+1

Это может быть 0. И 0 не EOF. – jdb

ответ

1

Хорошо, так что после того, как немного больше исследований и с помощью @jdb я был в состоянии решить эту проблему, и теперь я могу скачать файл с сервера без каких-либо проблем после успешного входа в систему. .. Кстати, спасибо @jdb указал мне в правильном направлении, чтобы заставить меня думать, что именно неправильно :)

код Оклейка здесь, если кто-то когда-либо хотел использовать:

import java.io.File; 
import java.io.FileOutputStream; 
import java.io.InputStream; 
import java.util.ArrayList; 
import java.util.List; 

import org.apache.http.Header; 
import org.apache.http.HttpEntity; 
import org.apache.http.HttpResponse; 
import org.apache.http.HttpVersion; 
import org.apache.http.NameValuePair; 
import org.apache.http.client.entity.UrlEncodedFormEntity; 
import org.apache.http.client.methods.HttpGet; 
import org.apache.http.client.methods.HttpPost; 
import org.apache.http.cookie.Cookie; 
import org.apache.http.impl.client.DefaultHttpClient; 
import org.apache.http.message.BasicNameValuePair; 
import org.apache.http.params.CoreProtocolPNames; 
import org.apache.http.protocol.HTTP; 


public class DownloadAuthenticatedFile{ 

    public static void main(String... args){ 

     try{ 
      DefaultHttpClient httpclient = new DefaultHttpClient(); 

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

      HttpResponse response = httpclient.execute(httpget); 
      HttpEntity entity = response.getEntity(); 

      System.out.println("Login form get: " + response.getStatusLine()); 
      if (entity != null) { 
       entity.consumeContent();    
      } 
      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()); 
       } 
      } 

      HttpPost httpost = new HttpPost("http://www.somewebsite.com/MemberSingIn"); 

      List<NameValuePair> nvps = new ArrayList<NameValuePair>(); 
      nvps.add(new BasicNameValuePair("email", "USERNAME")); 
      nvps.add(new BasicNameValuePair("password", "PASSWORD")); 
      nvps.add(new BasicNameValuePair("remember", "true")); 

      httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8)); 

      response = httpclient.execute(httpost); 
      entity = response.getEntity(); 

      System.out.println("Login form get: " + response.getStatusLine()); 
      if (entity != null) { 
       entity.consumeContent(); 
      } 

      System.out.println("Post logon cookies:"); 
      cookies = httpclient.getCookieStore().getCookies(); 
      String mySessionId = null; 
      if (cookies.isEmpty()) { 
       System.out.println("None"); 
      } else { 
       for (int i = 0; i < cookies.size(); i++) { 
        if(cookies.get(i).toString().contains("SessionId=")){ 
         int index1 = cookies.get(i).toString().indexOf("SessionId"); 
         String temp = cookies.get(i).toString().substring(index1); 
         int index2 = temp.toString().indexOf("]"); 
         temp = cookies.get(i).toString().substring(index1+10,index1+index2); 
         mySessionId = temp; 
        } 
        System.out.println("- " + cookies.get(i).toString()); 
       } 
      } 

      httpclient.getParams().setParameter(CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_1); 
      httpget = new HttpGet("http://PATHOFWEBSITETOFILE"); 
      response = httpclient.execute(httpget); 
      entity = response.getEntity(); 
      Header[] headers = response.getAllHeaders(); 
      for(int i=0;i<headers.length;i++){ 
       System.out.println("Header: "+headers[i].toString()); 
      } 
      System.out.println(response.toString()); 

      System.out.println("File get: " + response.getStatusLine()); 

      InputStream in = entity.getContent(); 
       File path = new File("/home/mrsevensevenseven"); 
       path.mkdirs(); 
       File file = new File(path, "myfile.xls"); 
       FileOutputStream fos = new FileOutputStream(file); 

       byte[] buffer = new byte[1024]; 
       int len1 = 0; 
       while ((len1 = in.read(buffer)) != -1) { 
         fos.write(buffer, 0, len1); 
       } 

       fos.close(); 

      httpclient.getConnectionManager().shutdown(); 
     }catch(Exception e){ 
      e.printStackTrace(); 
     } 

    } 

} 
Смежные вопросы