HTTP请求-请求行

打印 上一主题 下一主题

主题 1784|帖子 1784|积分 5352

请求行(方法,URL,版本号)
方法:

形貌了这次请求的目的。
常见方法:

GET:从服务器拿一个东西过来(读利用)
POST:往服务器放一个东西去(写利用)
两个典型的使用POST的场景:1.登录        2.上传
从使用习惯上,GET通常没有body,POST通常有body,
GET会把需要给服务器补充的信息放到query string中(url)
POST会把这些信息放到body中,body中可以放恣意格式的数据,前后端约定好即可(json是非常常用的格式)

GET与POST的区别

起首,GET与POST本质上没有区别。
        使用POST的场景可以替换成GET,反之亦然 => 取决于代码的写法,尤其是服务器和客户端都是本身实现的场景。但是部分欣赏器/服务器某些情况下GET和POST不能完善替换,大部分情况下相互替换问题不大。
        但是GET和POST在使用情况下还是有区别的:
1.GET习惯于把数据放在url的query string中,POST习惯于放在body中。
GET可以把数据放在body中 => 有的欣赏器/服务器不支持。
POST也可放在query string中 => 对于绝大多数欣赏器/服务器都适用。
2.语义上的区别,标准文档中,GET的语义用来获取数据,POST的语义是用来提交数据。
实际应用中并不肯定按照上述要求。
3.关于幂等性,标准文档中,建议GET请求实现成幂等的,POST则无要求。
每次输入的内容肯定,输出的效果也肯定,称为幂等。
每次输入的内容肯定,输出的效果不肯定,不是幂等。
如果一个利用本身是幂等的,此时就可以进行缓存了
4.GET请求可以被欣赏器收藏,POST不可以。

其他方法:

1.PUT与POST相似,只是具有幂等性,一样寻常用于更新。
2.DELETE删除服务器指定资源
3.OPTIONS返回服务器所支持的请求方法。
4.HEAD类似于GET,只不外相应体不返回,只返回相应头。
5.TRACE回显服务器收到的请求,测试的时候会用到。
6.CONNECT预留,暂无使用。

URL

用于形貌一个网络上的资源位置。
一个完备的URL结构:


协议方案名+登录信息(认证)+服务器地址+服务器端口+带有条理的文件地址+查询字符串+片段标识符
登录信息(认证):写在这里不太安全,现在都是通过单独的登录页面来完成身份验证的。
服务器地址+服务器端口:这里的域名也可以是ip地址,背面带有端口号,欣赏器就会自动给一个默认的端口。http:80;   https:443.
带有条理的文件地址:这里大概会对应一个真实的硬盘文件,也大概对应一个假造的文件。
网络上的资源位置:1)通过ip地址知道服务器在哪       
                                 2)通过端口号知道程序是哪个       
                                 3)通过路径知道是访问哪个资源
查询字符串:是客户端给服务器通报信息的重要途径,按照键值对的方式来组织的。针对请求的内容做的补充说明。
片段标识符:用来标识当前页面的某个部分,通过不同的片段标识可以完成网页内跳转。










免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

罪恶克星

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表