更新时间:2021-03-17 来源:黑马程序员 浏览量:
(1)问题分析
考官主要是针对http协议请求方式的考核,比如:http协议其他的请求方式!GET方法和POST方法本质上的区别等。
(2)核心答案解析
GET一般用于获取和查询资源信息,指定的资源经服务器端解析后返回响应内容,必要时,可以将查询字符串参数追加到URL末尾,以便将信息发送给服务器。POST一般用于更新资源信息,通常会用来传输实体的本体,用GET方法也可以传输实体的主体,但一般不用GET方法进行传输,而是用POST方法,虽然GET方法和POST方法很相似,但是POST的主要目的并不是获取响应的主体内容。
(3)问题扩展
http协议其他的请求方式?
● HEAD:获得报文首部,GET方法有实体,HEAD方法无实体。
● PUT:传输文件,就像FTP协议的文件上传一样,要求在请求报文的主体中包含文件内容,然后保存在请求URI指定的位置,存在安全问题,故一般不用。
● DELETE:删除文件或资源,与PUT方法相反,按URI删除指定资源
● OPTIONS:询问支持的方法,客户端询问服务器可以提交哪些请求方法
● TRACE:追踪路径,让Web服务器端将之前的请求通信还给客户端的方法
● CONNECT:要求用隧道协议连接代理,实现用隧道协议进行TCP通信。
GET方法和POST方法本质上的区别?
1)GET方法用于信息获取,它是安全的(安全:指非修改信息,如数据库方面的信息),而POST方法是用于修改服务器上资源的请求;
2)GET请求的数据会附在URL之后,而POST方法提交的数据则放置在HTTP报文实体的主体里,所以POST方法的安全性比GET方法要高;
3)GET方法传输的数据量一般限制在2KB,而Chrome,FireFox浏览器理论上对于URL是没有限制的,它真正的限制取决于操作系统本身;POST方法对于数据大小是无限制的,真正影响到数据大小的是服务器处理程序的能力。
(4)结合项目使用
在项目使用RESTful架构风格进行开发,GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源,这样就统一了数据操作的接口,仅通过HTTP方法,就可以完成对数据的所有增删查改工作。
猜你喜欢:
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19