解决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 ...
随机推荐
- TP5与TP3.X对比
首先声明本章节并非是指导升级旧的项目到5.0,而是为了使用3.X版本的开发者更快的熟悉并上手这个全新的版本.同时也强烈建议开发者抛弃之前旧的思维模式,因为5.0是一个全新的颠覆重构版本. 需要摒弃的3 ...
- css伪类制作三角箭头
<meta charset="utf-8"> <style type="text/css"> .tip{ padding: 5px 10 ...
- AJAX回调函数,返回JSON格式,应该返回自定义状态STATUS,但是却返回200
返回200应该是方法已经执行通的意思,但是没返回自定义的status,仔细一看json格式拼错了...
- 春节前最后一篇,CRUD码农专用福利:PDF.NET之SOD Version 5.1.0 开源发布(兼更名)
废话不多说,直接入正题,明天赶着坐火车回老家过年. 从2013.10.1日起,原PDF.NET将更名为 SOD :- one SQL-MAP,ORM,Data Control framework 原P ...
- SQLite vs MySQL vs PostgreSQL:关系型数据库比较
自1970年埃德加·科德提出关系模型之后,关系型数据库便开始出现,经过了40多年的演化,如今的关系型数据库种类繁多,功能强大,使用广泛.面对如此之多的关系型数据库,我们应该如何权衡找出适合自己应用场景 ...
- python自动化测试(3)- 自动化框架及工具
python自动化测试(3) 自动化框架及工具 1 概述 手续的关于测试的方法论,都是建立在之前的文章里面提到的观点: 功能测试不建议做自动化 接口测试性价比最高 接口测试可以做自动化 后面所谈到 ...
- 完全移除TFS2013的版本控制
环境:Vs2103(TFS2013) 目的:去掉别人项目里的TFS控制,因为每次打开时会有提示信息 解决方法: 1.删除隐藏的.$tf文件夹,搜索*.vssscc和*.vspscc这两个后缀的文件,删 ...
- Atitit常见的标准化组织与规范数量jcp ecma iso
Atitit常见的标准化组织与规范数量jcp ecma iso 1. 常见的标准化组织1 1.1. 重要的基金会apache1 1.2. 美国国家标准学会(American NationalStand ...
- 基于JQuery的浮动DIV显示提示信息并自动隐藏
/** * 浮动DIV定时显示提示信息,如操作成功, 失败等 * @param string tips (提示的内容) * @param int height 显示的信息距离浏览器顶部的高度 * @p ...
- iOS中通讯录的开发
通讯录开发主要是获取用户手机中的联系人,进而可以在应用中添加好友 一 .如何访问通讯录 (1)在iOS9之前,有两个框架可以访问用户的通讯录 AddressBookUI.framework: 提供了联 ...