解决java代码测试http协议505错误
代码功能:通过java代码获取网页源代码:
所用工具:Myclipse8.5+tomcat6.0+浏览器
系统环境:windows xp旗舰版
火狐浏览器版本:

IE浏览器版本:

测试http协议有错误java代码如下。
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.Socket; public class testhttp {
public static void main(String[] args) throws Exception {
Socket s=new Socket("127.0.0.1",8084);
PrintWriter pw =new PrintWriter(new OutputStreamWriter(s.getOutputStream()));
pw.println("GET /HTTP/1.1");
pw.println("Host:PC2014040911DWA");
pw.println("Content-Type:text/html");
pw.println();
pw.flush();
BufferedReader br =new BufferedReader(new InputStreamReader(s.getInputStream()));
String str ="";
while((str =br.readLine())!=null){
System.out.println(str);
}
br.close();
pw.close();
s.close(); }
}
控制台错误信息:

状态:
tomcat已经正常打开,我的 tomcat端口8084:

浏览器输入地址可以打开:

已经尝试过的:
1.自己百度查询505错误信息:
HTTP 505错误是HTTP状态码的一种,表示“HTTP版本不受支持”,当服务器不支持请求中所使用的HTTP协议版本时就回返回此错误,最为常见的是 HTTP/1.1。
解决505错误办法:
如果启用了 HTTP 1.1,则可能出现此类错误。要禁用 HTTP 1.1,请单击“工具”按钮,单击“Internet 选项”,然后单击“高级”
选项卡。在“设置”下,滚动到“HTTP 1.1 设置”部分,清除“使用 HTTP 1.1”复选框。如果第三方产品干
扰 Internet Explorer,则可能出现此类错误。请尝试关闭所有程序,然后重新尝试访问该网页。
大多数浏览器都默认Web服务器支持 1.x 的版本的 HTTP 协议。但实际上如 0.9 版今天已很少使用,关键是因为和新版本的协议比起来它们的
安全性和性能都差得多。 所以,如果您在浏览器中看到这个错误,可以升级您的Web服务器软件。如果版本 1.x 的请求失败,很可能是因为您
的 Web 服务器不是很好地支持 1.x 协议版本, 而不是根本不支持。
.经过尝试无效。


2.谷歌牛人博客
经验总结:HTTP返回505错误小记
上面方法经尝试,未果。
所以在csdn发帖求助。
http://bbs.csdn.net/topics/390788096
结果还是没有找到方法。
后来又自己读了百度百科里面这句话:
505错误的最专业描述
505 (HTTP Version Not Supported/不支持的 HTTP 版本)
505 (SC_HTTP_VERSION_NOT_SUPPORTED)状态码是说服务器并不支持在请求中所标明 HTTP 版本。
该状态是新加入 HTTP 1.1的。
于是试着把http1.1版本号删掉。哈哈,终于成功啦。
正确运行代码:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.Socket; public class testhttp {
public static void main(String[] args) throws Exception {
Socket s=new Socket("127.0.0.1",8080);
PrintWriter pw =new PrintWriter(new OutputStreamWriter(s.getOutputStream()));
pw.println("GET /");
pw.println("Host:PC2014040911DWA");
pw.println("Content-Type:text/html");
pw.println();
pw.flush();
BufferedReader br =new BufferedReader(new InputStreamReader(s.getInputStream()));
String str ="";
while((str =br.readLine())!=null){
System.out.println(str);
}
br.close();
pw.close();
s.close(); }
}
效果如下:


解决java代码测试http协议505错误的更多相关文章
- LibSvm流程及java代码测试
使用libSvm实现文本分类的基本过程,此文参考 使用libsvm实现文本分类 对前期数据准备及后续的分类测试进行了验证,同时对文中作者的分词组件修改成hanLP分词,对数字进行过滤,仅保留长度大于1 ...
- 20.fastDFS集群java代码测试
1.工程结构 2.代码内容 FastdfsClientTest.java代码 package cn.itcast.fastdfs.cliennt; import java.io.File; i ...
- maven编译java代码报“非法字符: \65279 ”错误的解决方法
前段时间开发一个项目,使用maven进行编译时报“非法字符: \65279 ”,但是眼睛看怎么都正确的,文件转成utf-8编码还是报错. 最后没办法,暴力解决了这个问,步骤如下 1.把文件内容复制出来 ...
- 解决 java.lang.IllegalThreadStateException: Thread already started. 错误
extends:http://blog.csdn.net/liuhanhan512/article/details/7575386 android开发中,对线程的操作比较悲催,start一个线程后,必 ...
- 通过Java代码浅谈HTTP协议
最近刚看了http协议,想写点东西加深一下理解,如果哪儿写错了,请指正. 1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(W ...
- ORA-12560: TNS: 协议适配器错误的解决方法
ORA-12560: TNS: 协议适配器错误的解决方法 造成ORA-12560: TNS: 协议适配器错误的问题的原因有三个: 1.监听服务没有起起来.windows平台个一如下操作:开始---程序 ...
- java代码模拟先入先出,fifo
最近在做一个先入先出的出库.琢磨了一下,写了一个简单的java代码测试: public static void main(String[] args) { LinkedList q = new Lin ...
- TNS-12560: TNS: 协议适配器错误
TNS-12560: TNS: 协议适配器错误 Microsoft Windows [版本 5.2.3790] (C) 版权所有 1985-2003 Microsoft Corp. C:\Docu ...
- 安装完ODAC,出现ORA-12560:TNS:协议适配器错误 12541 无监听程序的解决
进入系统环境变量设置,查看Path路径,发现D:\oracle\product\11.2.0\client_1等路径放到了oracle11g数据库路径前面,将新加入的路径置后即可解决ORA-12560 ...
随机推荐
- front end about mobile web techs
WEB OF DEVICES http://www.w3.org/standards/webofdevices/ MOBILE WEB http://www.w3.org/standards/webd ...
- while(cin.eof)出错 poj
zoj遇到c++如何判定输入流结尾的问题,一不小心就超时了 楼下的代码可以通过zoj #include<iostream> using namespace std; int main(){ ...
- sql字符串分组
create function f_myWord(@s varchar(50)) returns varchar(50) as begin declare @i int set @i=1 while ...
- Android提权漏洞CVE-2014-7920&CVE-2014-7921分析
没羽@阿里移动安全,更多安全类技术干货,请访问阿里聚安全博客 这是Android mediaserver的提权漏洞,利用CVE-2014-7920和CVE-2014-7921实现提权,从0权限提到me ...
- .net中事件引起的内存泄漏分析
系列主题:基于消息的软件架构模型演变 在Winform和Asp.net时代,事件被大量的应用在UI和后台交互的代码中.看下面的代码: private void BindEvent() { var bt ...
- 作业二:个人编程项目——编写一个能自动生成小学四则运算题目的程序
1. 编写一个能自动生成小学四则运算题目的程序.(10分) 基本要求: 除了整数以外,还能支持真分数的四则运算. 对实现的功能进行描述,并且对实现结果要求截图. 本题发一篇随笔,内容包括: 题 ...
- ASP.NET MVC 5 - 将数据从控制器传递给视图
在我们讨论数据库和数据模型之前,让我们先讨论一下如何将数据从控制器传递给视图.控制器类将响应请求来的URL.控制器类是给您写代码来处理传入请求的地方,并从数据库中检索数据,并最终决定什么类型的返回结果 ...
- [ASP.NET MVC 小牛之路]08 - Area 使用
ASP.NET MVC允许使用 Area(区域)来组织Web应用程序,每个Area代表应用程序的不同功能模块.这对于大的工程非常有用,Area 使每个功能模块都有各自的文件夹,文件夹中有自己的Cont ...
- 搞懂 SynchronizationContext(第一部分)【翻译】
SynchronizationContext -MSDN 很让人失望 我不知道为什么,目前在.Net下关于这个类只有很少的资料.MSDN文档也只有很少的关于如何使用SynchronizationCon ...
- 谈初学Java历程
学习Java一个月左右,本来很早就想好好静下心来写一点东西了.但由于不想手写,文档写了不知道放在哪好,所以一直拖着.最近注册了博客园,还是挺方便的. 即将大学毕业了,则面临了所以大学生所面临的问题,就 ...