Java Web ——http协议请求报文

 1 package com.demo.util;
 2 
 3 import java.io.IOException;
 4 import java.io.InputStream;
 5 import java.net.*;
 6 /**
 7  * 1、模拟服务器,通过浏览器来访问
 8  * @author AWEEN
 9  *
10  */
11 public class HttpDemo {
12 
13     public static void main(String[] args) {
14         // TODO Auto-generated method stub
15         ServerSocket ss = null;
16         Socket s = null;
17         
18         try {
19             ss = new ServerSocket(8888);
20             
21             System.out.println("服务器已经启动了,等待访问连接");
22             
23             s = ss.accept(); //准备就绪,等待
24             
25             System.out.println("一下是浏览器发送过来的数据:");
26             //通过输入流读取浏览器传过来的信息
27             InputStream is =  s.getInputStream();
28             //输出
29             byte[] buf = new byte[1024*8];
30             int len = is.read(buf);
31             
32             System.out.println(new String(buf,0,len));
33 
34         } catch (IOException e) {
35             // TODO Auto-generated catch block
36             e.printStackTrace();
37         }
38     }
39 
40 }

 

用浏览器访问模拟服务器   http://localhost:8888

得到浏览结果

 

查看控制台输出结果:

服务器已经启动了,等待访问连接
一下是浏览器发送过来的数据:
GET / HTTP/1.1      /*  请求类型/协议版本  */
Host: localhost:8888
Connection: keep-alive  /*  连接类型:keep-alive保持连接、close只链接一次  */
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8  /*  浏览器可以接受的媒体类型 */*表示可以执行所有媒体 */
Upgrade-Insecure-Requests: 1   /*  这是什么鬼???  */   
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36  /*  浏览器版本  */
Accept-Encoding: gzip, deflate, sdch  /*  编码类型  */
Accept-Language: zh-CN,zh;q=0.8  /*  接收语言  */

posted @ 2016-03-21 14:22  AWEEN  阅读(505)  评论(0)    收藏  举报