读书人

用HttpClient访问网页不成功麻烦帮小

发布时间: 2012-01-31 21:28:41 作者: rapoo

用HttpClient访问网页不成功,麻烦帮我看下程序

import java.io.IOException;



import org.apache.commons.httpclient.*;

import org.apache.commons.httpclient.methods.*;

/**

* 提交参数演示

* 该程序连接到一个用于查询手机号码所属地的页面

* 以便查询号码段1330227所在的省份以及城市

* @author Liudong

*/

public class SimpleHttpClient {



public static void main(String[] args) throws IOException

{

HttpClient client = new HttpClient();

client.getHostConfiguration().setHost( "www.imobile.com.cn ", 80, "http ");



HttpMethod method = getPostMethod();//使用POST方式提交数据

client.executeMethod(method);

//打印服务器返回的状态

System.out.println(method.getStatusLine());

//打印结果页面

String response =

new String(method.getResponseBodyAsString().getBytes( "8859_1 "));

//打印返回的信息

System.out.println(response);

method.releaseConnection();

}


* 使用POST方式提交数据

* @return

*/

private static HttpMethod getPostMethod(){

PostMethod post = new PostMethod( "/search2005.php ");

NameValuePair searchkeyword = new NameValuePair( "searchkeyword ", "1330227 ");

post.setRequestBody(new NameValuePair[] { searchkeyword});

return post;

}

}


编译通过,执行的时候出现的信息如下:

---------- java ----------
2007-9-10 11:48:37 org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
信息: I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect
2007-9-10 11:48:37 org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
信息: Retrying request
2007-9-10 11:48:58 org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
信息: I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect


2007-9-10 11:48:58 org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
信息: Retrying request
2007-9-10 11:49:19 org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
信息: I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect
2007-9-10 11:49:19 org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
信息: Retrying request
Exception in thread "main " java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:507)
at java.net.Socket.connect(Socket.java:457)
at java.net.Socket. <init> (Socket.java:365)
at java.net.Socket. <init> (Socket.java:238)
at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:80)
at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:122)
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
at SimpleHttpClient.main(SimpleHttpClient.java:38)

输出完成 (耗时: 1 分 27 秒) - 正常终止

[解决办法]
jf!


[解决办法]
呵呵,接分了
[解决办法]
真历害,做这些还是用 EditPlus,这些方法、类都记得住啊,佩服ing

读书人网 >J2SE开发

热点推荐