Tag: httpclient输入

Androidexception(不可信服务器证书):https带有服务器身份validation的XML请求

在我的Android应用程序中,我必须读取存储在服务器中的XML文件。 由于这是一个安全的网页[SSL(https)],要访问XML文件所在的位置( https://serverAddress/path/ ),通常需要用户名/密码validation 以下是我用来阅读和获取XML Stream的代码。 但是当它试图执行HttpResponse httpResponse = httpClient.execute(httpGet);时总会出现exceptionHttpResponse httpResponse = httpClient.execute(httpGet); 声明。 例外表示Not trusted server certificate 。 还在Manifest文件中添加了Internet访问权限 如果XML文件存储在不需要任何身份validation的地方,那么它可以正常工作。 我到处搜索,但没有找到任何可以做到这一点的例子。 如果有人可以指导这个过程,我将非常感激。 提前致谢…!!!! try { Log.v(“State”,”Started…”); HttpClient httpClient = new DefaultHttpClient(); HttpGet httpGet = new HttpGet(“https://serverAddress/path/MyXMLFile.xml”); httpGet.addHeader(BasicScheme.authenticate(new UsernamePasswordCredentials(“username”, “password”),HTTP.UTF_8, false)); HttpResponse httpResponse = httpClient.execute(httpGet); InputStream xmlInputStream = httpResponse.getEntity().getContent(); Toast.makeText(getApplicationContext(), this.convertStreamToString(xmlInputStream), Toast.LENGTH_LONG).show(); Log.v(“State”,”Finish…”); } catch(Exception […]

Java中的Apache HttpClient,instream.toString = org.apache.http.conn.EofSensorInputStream

我正在使用Apache HttpClient获取一个页面,我想将服务器回复的http主体存储到一个字符串中,这样我就可以操作这个字符串并将其打印到控制台。 不幸的是,在运行此方法时,我收到此消息: 17:52:01,862 INFO Driver:53 – fetchPage STARTING 17:52:07,580 INFO Driver:73 – fetchPage ENDING, took 5716 org.apache.http.conn.EofSensorInputStream@5e0eb724 fetchPage类: public String fetchPage(String part){ log.info(“fetchPage STARTING”); long start = System.currentTimeMillis(); String reply; String searchurl = URL + URL_SEARCH_BASE + part + URL_SEARCH_TAIL; HttpClient httpclient = new DefaultHttpClient(); HttpGet httpget = new HttpGet(searchurl); HttpResponse response; try { […]