HTTP协议理解
来源:互联网 发布:杭州seo顾问服务 编辑:程序博客网 时间:2024/05/16 19:20
1.socket相关网站参考
http://wangjun.easymorse.com/?p=128
http://kongjian.baidu.com/wzgws/blog/item/f2b334065909c47003088100.html
http://bbs.51cto.com/archiver/tid-486921.html
2.http协议
一个Http请求包括三个重要的部分:
Method-URI-Protocol/Version
Request headers
CRLF分割
Entity body
下面是一个Http请求的例子:
POST /servlet/default.JSP HTTP/1.1
Accept: text/plain; text/html
Accept-Language: en-gb
Connection: Keep-Alive
Host: localhost
Referer: http://localhost/ch8/SendDetails.htm
User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)
Content-Length: 33
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
LastName=Franks&FirstName=Michael
其中第一行是Method-URI-Protocol/Version ,这是非常重要的部分,你需要从中读取客户端数据传输的方式,URI以及协议和版本,
在这里分别是POST / servlet/default.jsp http/1.1,我们的简单的服务器的思路就是从request中得到URI后在你的服务器上找到
这个资源,比如是一个静态的html页面,然后把它发送给浏览器。记住URI是相对于你的HTTP服务器的根目录的,所以以/来开头。接
下来的部分是请求头信息它们都是以name:value这样的方式构成的,这里不再多介绍了。在Header和Entity body之间有一空行叫做CRLF,
这用来标记Entity body的开始的,意思是下面的是传输的数据了
HTTP响应和请求非常相似,同样包括三个部分:
Protocol-Status code-Description
Response headers
CRLF分割
Entity body
下面是一个具体的例子:
HTTP/1.1 200 OK
Server: Microsoft-IIS/4.0
Date: Mon, 3 Jan 1998
13:13:33 GMT
Content-Type: text/html
Last-Modified: Mon, 11 Jan 1998
13:23:42 GMT
Content-Length: 112
something in html style......................
状态码:
301 SC_MOVED_PERMANENTLY 页面已经永久移到另外一个新地址
302 SC_MOVED_TEMPORARILY 页面暂时移动到另外一个新的地址
303 SC_SEE_OTHER 客户端请求的地址必须通过另外的URL来访问
307 SC_TEMPORARY_REDIRECT
200 代表连接成功
通常在j2me联网中我们需要判断响应的状态码来决定下一步的操作,比如200代表连接成功。现在你应该清楚为什么这么做了吧。同样在Header和Entity
body中有一个CRLF分割。
3.模拟http服务器发送和接收消息(java.net.*)
使用浏览器访问服务器:http://localhost:8080/index.html
使用程序代码访问浏览器
4.查看http+xml系统图
http://127.0.0.1:8099
http://127.0.0.1:8099/corres/LoginServlet
1.请求http协议
2.使用httpclient(请求协议)
URL
HttpURLConnection
3.应答http协议
拼接协议
5.常用的检测网络通信的命令:
telnet 172.17.5.58 8099
ping 172.17.5.58
抓包工具:follow tcp stream
- http协议:http协议理解
- 深入理解HTTP协议
- 深入理解HTTP协议
- 深入理解HTTP协议
- 深入理解http协议
- 深入理解HTTP协议
- 深入理解HTTP协议
- 深入理解HTTP协议
- HTTP协议理解
- 深入理解HTTP协议
- 深入理解HTTP协议
- 深入理解http协议
- 深入理解HTTP协议
- 深入理解HTTP协议
- 深入理解HTTP协议
- 深入理解HTTP协议
- HTTP协议深入理解
- 深入理解http协议
- dd命令解析和例子
- [dika 记录] erlang游戏网关,及一些第三方erlang开源项目的使用
- DirectFB代码导读
- 远程桌面控制(1)截图保存图片
- mrtg流量图不更新了是怎么回事,谁有mrtg的安装及配置文档啊,求!!!
- HTTP协议理解
- Android 横屏启动activity,点击屏幕的单击、双击和长按事件
- 提高IIS网站服务器效率八法
- 有图有真相 新MBP视网膜屏初露锋芒(多图)
- android:screenOrientation屏幕方向
- MFC中文件的建立与操作
- Object-C 中各数据类型转换 NSData转NSString,Byte,UIImage
- 怎样去除桌面图标下的底色[XP系统]
- 如何防止Apache显示文件列表