http协议及http协议和tcp协议的区别
发布网友
发布时间:2022-04-21 10:13
我来回答
共2个回答
热心网友
时间:2022-04-20 18:38
tcp对应于传输层、http对应于应用层
http协议建立在tcp协议之上
过程:当获取网络数据时,http通过TCP建立以个到服务器的通道,请求完成后,http立即断开连接,次过程非常短。所以说http是一种短连接、无状态连接。
socket称为套接字,方便程序员使用TCP/IP协议,它提供了网络通信的能力
其中有如下关系:
客户端进程--客户端socket--tcp连接--http
服务器进程--服务器socket--TCP连接--http
socket是他们之间的“门”,http的相应和接收到要经过这个“门”
TCP/IP是个协议组,有四层:网络接口层、网络层、传输层、应用层
网络层:iP协议、ICMP协议、ARP协议、RARP协议、BOOTP协议
传输层:TCP协议、UDP协议
应用层:FTP HTTP TELNET SMTP DNS等协议
URL:统一资源标识符
格式:schema://host[:port#]/path/…/[?query-string][#anchor]
scheme 指定低层使用的协议(例如:http, https, ftp)
host HTTP服务器的IP地址或者域名
port# HTTP服务器的默认端口是80,这种情况下端口号可以省略。如果使用了别的端口,必须指明,例如 http://www.cnblogs.com:8080/
path 访问资源的路径
query-string 发送给http服务器的数据
anchor- 锚
URL 的一个例子
http://www.mywebsite.com/sj/test/test.aspx?name=sviergn&x=true#stuff
HTTP协议之Get和Post
http定义了许多与服务器交互的方法、最基本的有四种:
GET、POST、PUT、DELETE
POST与GET的区别
1. GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditPosts.aspx?name=test1&id=123456. POST方法是把提交的数据放在HTTP包的Body中.
2. GET提交的数据大小有*(因为浏览器对URL的长度有*),而POST方法提交的数据没有*.
3. GET方式需要使用Request.QueryString来取得变量的值,而POST方式通过Request.Form来获取变量的值,也就是说Get是通过地址栏来传值,而Post是通过提交表单来传值。
4. GET方式提交数据,会带来安全问题,比如一个登录页面,通过GET方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码.
热心网友
时间:2022-04-20 19:56
简单的说:TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。