HTTP

2018-05-01  本文已影响0人  剑指天涯心有梦

HTTP

HTTP全称 HyperText Transfer Protocol 即超文本传输协议
是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。
HTML 全称:HyperText Markup Language超文本标记语言
是一种用于创建网页的标准标记语言。
URI 全称:Uniform Resource Identifier统一资源标识符
URI分为URLURN 我们一般使用URL作为网址
URN全称:Uniform Resource Name统一资源名称
通过URN可以确定一个【唯一的】资源
URL 全称:Uniform Resource Locator统一资源定位符
通过URL可以确定一个【唯一的】地址(网址)
https://www.baidu.com/s?wd=hello&rsv_spt=1#5 就是一个 URL,通过 URL 你可以确定一个「唯一的」地址(网址)。
[图片上传失败...(image-7e3b8e-1525178150562)]

域名

www.baidu.com为例

DNS

DNS 全称 Domain Name System网域名称系统
它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCPUDP端口53
DNS会根据一个域名返回一个IP
在本地设置hosts可以绕过DNS。使用命令sudo vi /etc/hosts设置。
[图片上传失败...(image-876ce1-1525178150562)]

HTTP请求

一个HTTP请求报文由请求行、请求头部、空行和请求数据4个部分组成
请求的格式

1 动词 路径 协议/版本
2 Key1: value1
2 Key2: value2
2 Key3: value3
2 Content-Type: application/x-www-form-urlencoded
2 Host: www.baidu.com
2 User-Agent: curl/7.54.0
3 
4 要上传的数据
  1. 请求最多包含四部分,最少包含三部分。(也就是说第四部分可以为空)
  2. 第三部分永远都是一个回车(\n)
  3. 动词有 GET POST PUT PATCH DELETE HEAD OPTIONS 等
  4. 这里的路径包括「查询参数」,但不包括「锚点」
  5. 如果你没有写路径,那么路径默认为 /
  6. 第 2 部分中的 Content-Type 标注了第 4 部分的格式

用Chrome发请求

  1. 在谷歌浏览器空白处单击右键,点击检查,打开Network
  2. 地址栏输入网址
  3. 选中第一个请求
  4. 查看Request Headers,点击view source将会看到请求的前两部分
  5. 查看FormDataPayload将会看到请求的第四部分(如果有的话)

HTTP响应

HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行、响应正文。
响应的格式

1 协议/版本号 状态码 状态解释
2 Key1: value1
2 Key2: value2
2 Content-Length: 17931
2 Content-Type: text/html
3
4 要下载的内容

响应示例
状态码是服务器对浏览器说的话

用Chrome查看响应

  1. 打开Network
  2. 输入网址
  3. 选中第一个响应
  4. 查看Response Headers,点击view source将会看到响应的前两部分
  5. 查看Response或者Preview将会看到响应的第四部分。

CURL

在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具。更多用法可以参考这篇网站

上一篇 下一篇

猜你喜欢

热点阅读