java.net.HttpURLConnection的使用
来源:互联网 发布:java编译和加载的顺序 编辑:程序博客网 时间:2024/05/24 02:57
然需要做一个Java的Ajax代理,只好又操起java来了。。。。。。写好了再放出源码
转贴内容:
web登陆无非就是网页获取,cookie 的管理,post和get方式的模拟。
1.网页内容获取
java.io.inputstream in;
java.net.url url = new java.net.url(www.xyz.com/content.html);
java.net.httpurlconnection connection = (java.net.httpurlconnection)
url.openconnection();
connection = (java.net.httpurlconnection) url.openconnection();
//模拟成ie
connection.setrequestproperty("user-agent","mozilla/4.0 (compatible; msie 6.0; windows 2000)");
connection.connect();
in = connection.getinputstream();
java.io.bufferedreader breader =
new bufferedreader(new inputstreamreader(in , "gbk"));
string str=breader.readline());
while(st != null){
system.out.println(str);
str=breader.readline());
}
2.cookie管理
1.直接的方式
取得cookie:
httpurlconnection huc= (httpurlconnection) url.openconnection();
inputstream is = huc.getinputstream();
// 取得sessionid.
string cookieval = hc.getheaderfield("set-cookie");
string sessionid;
if(cookieval != null)
{
sessionid = cookieval.substring(0, cookieval.indexof(";"));
}
发送设置cookie:
httpurlconnection huc= (httpurlconnection) url.openconnection();
if(sessionid != null)
{
huc.setrequestproperty("cookie", sessionid);
}
inputstream is = huc.getinputstream();
2.利用的jcookie包(http://jcookie.sourceforge.net/ )
获取cookie:
url url = new url("http://www.site.com/");
httpurlconnection huc = (httpurlconnection) url.openconnection();
huc.connect();
inputstream is = huc.getinputstream();
client client = new client();
cookiejar cj = client.getcookies(huc);
新的请求,利用上面获取的cookie:
url = new url("http://www.site.com/");
huc = (httpurlconnection) url.openconnection();
client.setcookies(huc, cj);
3.post方式的模拟
url url = new url("www.xyz.com");
httpurlconnection huc = (httpurlconnection) url.openconnection();
//设置允许output
huc.setdooutput(true);
//设置为post方式
huc.setrequestmethod("post");
huc.setrequestproperty("user-agent","mozilla/4.7 [en] (win98; i)");
stringbuffer sb = new stringbuffer();
sb.append("username="+usernme);
sb.append("&password="+password);
//post信息
outputstream os = huc.getoutputstream();
os.write(sb.tostring().getbytes("gbk"));
os.close();
bufferedreader br = new bufferedreader(new inputstreamreader(huc.getinputstream()))
huc.connect();
string line = br.readline();
while(line != null){
l
system.out.printli(line);
line = br.readline();
}
- java.net.HttpURLConnection的使用
- java.net.HttpURLConnection的使用
- java.net.HttpURLConnection的使用
- java.net.HttpURLConnection的使用
- 【Java】java.net.HttpURLConnection的使用
- 『转』【Java】java.net.HttpURLConnection的使用
- Java的HttpURLConnection使用记录
- java.net.HttpURLConnection 实例
- Java中HttpURLConnection的使用示例
- java中的URLConnection和HttpURLConnection的使用
- Java网络编程|HttpURLConnection的使用
- android开发使用httpurlconnection异常java.net.UnknownHostException:xxxxxxx.com
- Java HttpURLConnection使用
- java.net.HttpURLConnection 的设计引起的事件
- HttpURLConnection的使用
- HttpURLConnection的使用
- HttpURLConnection的使用
- HttpURLConnection的使用
- ListView的SubItems使用的时候出现“无效属性值”的err
- 微软ATC的笔试面试经历
- shell的awk,sort,uniq使用
- MS-ATC笔试 题目 (含部分答案)
- Java 高层网络编程 (GET,POST取得数据)
- java.net.HttpURLConnection的使用
- [转]FSO写UTF-8编码文件
- 一个计算机高手的成长(转载)
- Ubuntu 忘记密码
- javaScript 和 prototype类的创建与继承
- SQL查询中的转义字符
- 畅游在水中——游泳培训教程
- 职场故事:跳槽计划被泄密以后……
- C/C++编程GUI库比较