美文网首页
饥人谷作业 --- http介绍

饥人谷作业 --- http介绍

作者: xiaoznz | 来源:发表于2018-05-13 21:53 被阅读0次

    今天我要写一个有关http介绍的东西,那么首先我觉得有必要把我现阶段理解的http内容做一个总结:

    超文本傳輸協定英文HyperText Transfer Protocol,縮寫HTTP)是一種用於分佈式、協作式和超媒體信息系統的應用層協議[1]。HTTP是全球資訊網的數據通信的基礎。

    设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。通过HTTP或者HTTPS协议请求的资源由统一资源标识符(Uniform Resource Identifiers,URI)来标识。

    HTTP的发展是由提姆·柏內茲-李於1989年在歐洲核子研究組織(CERN)所發起。HTTP的標準制定由万维网协会(World Wide Web Consortium,W3C)和互联网工程任务组(Internet Engineering Task Force,IETF)進行協調,最终发布了一系列的RFC,其中最著名的是1999年6月公佈的 RFC 2616,定義了HTTP協議中現今廣泛使用的一個版本——HTTP 1.1。(以上内容抄自谷歌超文本传输协议

    简单来说,http就是一个规定你怎么传数据格式的玩意,而至于怎么传,那就交给tcp协议来管了。

    那么现在解释完了我个人的理解以后,我就把http协议的请求和响应,以及curl命令做一个介绍:

    1:HTTP 请求包括哪些部分,如何用Chrome开发者工具查看 HTTP 请求内容

    首先请求最多包含四部分,最少包含三部分。(第四部分可以为空)如图:

    第一部分:动词 路径 协议/版本(我这个就是发了一个post请求,路径是/,协议版本是http1.1)

    动词有 GET( 指定的页面信息,并返回响应主体)

    POST(向指定资源提交数据,请求服务器进行处理)

     PUT(向指定资源位置上传其最新内容,也就是全局更新) 

    PATCH(区别于put,资源的部分更新)

     DELETE (请求服务器删除所请求URI)等

    这里的路径包括「查询参数」,但不包括「锚点」,如果没有写路径,那么路径默认为 /(比如我的)

    第二部分:key:value

    比如我图上就有四条键值对,依次是host,user-agent。accept,content-length,content-type(标注了第 4 部分的格式)

    第三部分永远都是一个回车(\n)

    第四部分:分是否有上传内容,如果有显示比如图上我的3 bytes data,如果没有就不显示。

    好了,我们看看实际操作中如何看http请求呢,打开chrome,按F12

    打开 Network    地址栏输入网址    在 Network 点击,查看 request,点击「view source」

    如图:

    这是qq的网页http请求部分

    如果有请求的第四部分,那么在 FormData 或 Payload 里面可以看到

    2.HTTP 响应包括哪些部分,如何用Chrome开发者工具查看 HTTP 响应内容

    响应也包含四部分,先放图:

    第一部分:协议/版本号 状态码 状态解释

    协议版本号不多解释,状态码是个啥玩意呢?错误404看见过吧,这就是状态码

    1xx:消息,这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束

    2xx:成功,这一类型的状态码,代表请求已成功被服务器接收、理解、并接受(200,203,204)

    3xx:重定向,这类状态码代表需要客户端采取进一步的操作才能完成请求(比如我这个302)

    4xx:客户端错误,这类的状态码代表了客户端看起来可能发生了错误,妨碍了服务器的处理(401,404,405)

    5xx:服务器错误,表示服务器无法完成明显有效的请求(502,503)

    状态码主要是这几种

    状态解释没啥用,不说也罢。

    第二部分: Key: value(同请求的第二部分一样)

    第三部分也是回车

    第四部分是:要下载的内容

    到了chrome上,还是跟之前一样,不过要换到request了,如图:

    3.如何使用 curl 命令

    好了,介绍了那么多,我们看看在命令行怎么实现看http协议吧,用curl命令即可

    语法:curl     -[参数]    --     [url]

    常用参数:-d/--data    HTTP POST方式传送数据 

    -s/--silent静音模式。不输出任何东西

    -v/--verbose 

     -H/--header 自定义头信息传递给服务器

    -X/--request 指定什么命令  

    如图:

    相关文章

      网友评论

          本文标题:饥人谷作业 --- http介绍

          本文链接:https://www.haomeiwen.com/subject/fsfrdftx.html