Java发送http请求时,如何改变所使用的http版本号?
typecho
typecho 2017-06-12 09:20:48
[Java讨论组]

Java发送http请求时,如何改变所使用的http版本号?我如何手动实现使用http 1.1 或http 1.0?

typecho
typecho

Following the voice in heart.

全部回复(2)
ringa_lee
Socket s = new Socket(InetAddress.getByName("stackoverflow.com"), 80);
PrintWriter pw = new PrintWriter(s.getOutputStream());
pw.println("GET / HTTP/1.1");
pw.println("Host: caiyongji.com");
pw.println("");
pw.flush();
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
String t;
while((t = br.readLine()) != null) System.out.println(t);
br.close();
怪我咯

用 Java 自带的 HttpURLConnection 是做不到的,详情参考:
http://bugs.java.com/bugdatab...

可以考虑自己用 Socket 发送简单的 HTTP 请求,或者用第三方库。以 Apache HttpClient 为例:

HttpClient client = new DefaultHttpClient(); 
client.getParams().setParameter(CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_0);
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号