http请求的七种方法

http请求的方法

get

head

head 请求和get请求类似,但是服务器只响应首部,不会返回主体部分。

1. 看资源是否存在

2. 看首部,context-length是否被修改了。

 
  1.  //get请求报文
  2.  GET /test/index.html  HTTP/1.1
  3.  Host: www.dudu.com
  4.  Accept:*
  5.  //get 响应报文
  6.  Http/1.2 200 ok
  7.  Content-type:text/html;
  8.  Content-Length:617;
  9.  
  10.  <html>
  11.  <div>  
  12.  
  13.  
  14.  // head请求报文
  15.  Head /test/index.html  HTTP/1.1
  16.  Host: www.dudu.com
  17.  Accept:*
  18.  //head 响应报文
  19.  Http/1.2 200 ok
  20.  Content-type:text/html;
  21.  Content-Length:617; 

put

和get 相反,会向服务器写入文档,服务器用请求主体部分创造一个新的文档,url就是put 请求的url; 如果资源已经存在,则更新资源

 
  1. // put 请求报文
  2. Put /test/put.txt HTTP/1.1
  3. Host:www.dudu.com
  4. Content-type: text/plain;
  5. Content-length: 34
  6.  
  7. 'hahah'
  8.  
  9.  
  10.  
  11. // put响应报文
  12. Http/1.1 201 created
  13. location:www.dudu.com/test/put.txt
  14. Content-type: text/plain;
  15. Content-length: 34
  16.  
  17. www.dudu.com/test/put.txt 

post

get / post 有哪些区别?

GET和POST本质上就是TCP链接,本质上都一样。

  get
后退按钮/刷新 无害 数据会被重新提交(浏览器应该告知用户数据会被重新提交)。
书签 可收藏为书签 不可收藏为书签
缓存 能被缓存 不能缓存
编码类型 application/x-www-form-urlencoded application/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码。
历史 参数保留在浏览器历史中。 参数不会保存在浏览器历史中。
对数据长度的限制 是的。大概是2kb, 会出现截断的情况 无限制。
对数据类型的限制 只允许 ASCII 字符。 没有限制。也允许二进制数据。
安全性

与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。

在发送密码或其他敏感信息时绝不要使用 GET !

POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。
可见性 数据在 URL 中对所有人都是可见的。 数据不会显示在 URL 中。

(安全后退书签缓存编码历史两个限制)

GET和POST的底层也是TCP/IP,也就是说,GET/POST都是TCP链接。GET和POST能做的事情是一样一样的。你要给GET加上request body,给POST带上url参数,技术上是完全行的通的。如果你用GET服务,在request body偷偷藏了数据,不同服务器的处理方式也是不同的,有些服务器直接忽略

GET和POST还有一个重大区别,简单的说:

GET产生一个TCP数据包;POST产生两个TCP数据包。
长的说:

对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);

而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

trace

『儿子你都变成啥样了』

客户端发起的请求要经过防火墙,代理等程序,任何一个程序都有可能修改请求。

trace 请求,服务器会把它收到的原始请求报文转发回去;

opinions

『你能干啥』

请求服务器告知其功能,可以问服务器支持哪些方法,可以对某些特定的资源支持哪些方法

delete

请求删除某一资源,不能保证一定会删除


内容更新于: 2018-04-11 12:21:09 
链接地址: http://blog.leanote.com/post/dujuncheng/http-7-%E7%A7%8D%E6%96%B9%E6%B3%95

猜你喜欢

转载自blog.csdn.net/u012919352/article/details/84350839