java测试服务器的方法!

来源:互联网 发布:linux vi编辑器下载 编辑:程序博客网 时间:2024/04/29 11:58

这个我在精华帖里找的:
以前在学习structs kick start里见过同样的测试方法,看来是通用的方法,所有写于此,以备查询!
说明:这个是来自于帖子,与struts kick start 类似

用java构造了一个请求,内容如下
Socket s = new Socket();
s.connect(new InetSocketAddress("127.0.0.1",6888), 80000);
PrintStream out = new PrintStream(s.getOutputStream());
out.print("GET / HTTP/1.1/r/n");
out.print("Accept-Language: zh-cn/r/n");
out.print("User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)/r/n");
out.print("Range: bytes=-2;2-10/r/n"); //或者out.print("Range: bytes=-2,2-10/r/n"); 都不支持
out.print("Host: www.apusic.com/r/n");
out.print("/r/n");
out.flush();

BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
String line = in.readLine();
while (line != null) {
  System.out.println(line);
  line = in.readLine();
}
请求部分第一行是一个空行,第二行才是请求命令

 

断点续传(分范围请求)怎么样呢?
我用java构造了一个请求,内容如下
Socket s = new Socket();
s.connect(new InetSocketAddress("127.0.0.1",6888), 80000);
PrintStream out = new PrintStream(s.getOutputStream());
out.print("GET / HTTP/1.1/r/n");
out.print("Accept-Language: zh-cn/r/n");
out.print("User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)/r/n");
out.print("Range: bytes=-2;2-10/r/n"); //或者out.print("Range: bytes=-2,2-10/r/n"); 都不支持
out.print("Host: www.apusic.com/r/n");
out.print("/r/n");
out.flush();

BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
String line = in.readLine();
while (line != null) {
  System.out.println(line);
  line = in.readLine();
}

是否支持可以防止过量http头信息
Socket s = new Socket();
s.connect(new InetSocketAddress("127.0.0.1",6888), 80000);
PrintStream out = new PrintStream(s.getOutputStream());
out.print("GET / HTTP/1.1/r/n");
while(true) {
  out.print("crack you !!")
}

 

实现多路复用的基本原理就是检测输入流的头几个字节,进而判断出协议类型。由于没有任何协议是以CRLF打头的,因此Apusic抛弃了这一连接请求。

如果你想在IE中看到错误信息其实也很简单,只需在IE中打开   工具->Internet选项->高级->浏览->显示友好HTTP错误信息将上面的勾去掉就行了。IE只认为它的错误信息是"友好"的,别人的都是"不友好"的,它这么霸道,我们也没办法。


世界上没有任何一个软件是十全十美的,发现并解决问题不仅不会对软件造成伤害,反而会使软件向更好的方向发展。我相信国外同行们看到我们这些问题肯定不会耻笑我们,相反会善意地指出我们的问题,帮助我们改进。一个心态良好的程序员绝不会回避程序中存在的错误和缺陷,相反,每发现一个程序中的错误都会感到很兴奋,因为这个程序的稳定性又将要提高了。

以上的内容来自http://community.csdn.net/Expert/topic/4019/4019503.xml?temp=.1779596精华帖!
这个测试方法对于我很有感触,所以把部分帖子内容摘于此!
感谢
kangaroo_egg(袋鼠蛋) ( 一级(初级)) 
struct() ( 一级(初级))
的精彩语言和技术!

原创粉丝点击