HTTP进修笔记

一、WWW观点WWW(World Wide Web),重要包括三部份观点
URI,俗称网址
HTTP,两个电脑之间传输内容的协定
HTML,超等文本,重要用来做页面跳转
诠释:URL 的作用是能让你接见一个页面,HTTP 的作用是让你能下载这个页面,HTML 的作用是让你能看懂这个页面。

URI 是什么
观点:一致资本标识符(英语:Uniform Resource Identifier,缩写URI)
URI 分为 URL 和 URN,我们平常运用 URL 作为网址。

URN是什么
观点:一致资本称号(英语:Uniform Resource Name,缩写URN)

URL是什么
观点:一致资本定位符(英语:Uniform Resource Locator,缩写URL)

DNS是什么
网域称号体系(英语:Domain Name System,缩写:DNS)是互联网的一项效劳。它作为将域名和IP地点互相映照的一个分布式数据库,能够使人更方便地接见互联网。DNS运用TCP和UDP端口53[1]。当前,关于每一级域名长度的限定是63个字符,域名总长度则不能超过253个字符。

二、要求与相应
2.1http作用
HTTP 的作用就是指点浏览器和效劳器怎样举行沟通。
浏览器担任提议要求
效劳器在 80 端口吸收要求
效劳器担任返回内容(相应)
浏览器担任下载相应内容

2.2要求示例
Git Bash命令行实行后,要求内容为:
-s显现进度
-v完全的显现要乞降相应
-H增加要求头

curl -s -v -H "Frank: xxx" -- "https://www.baidu.com"
【GET要求内容】
GET / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.54.0
Accept: */*
Frank: xxx


curl -X POST -s -v -H "Frank: xxx" -- "https://www.baidu.com"
【POST要求内容】
POST / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.54.0
Accept: */*
Frank: xxx


curl -X POST -d "1234567890" -s -v -H "Frank: xxx" -- "https://www.baidu.com"
【POST带数据要求内容】
POST / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.54.0
Accept: */*
Frank: xxx
Content-Length: 10
Content-Type: application/x-www-form-urlencoded
//注重此处是空行
1234567890

2.3要求内容花样示例

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 要上传的数据
注:要求第二部份有多行内容,花样为 Key?: value?

0 要求最多包括四部份,起码包括三部份。(也就是说第四部份能够为空)
1 第三部份永远都是一个回车(n)
2 动词有 GET POST PUT PATCH DELETE HEAD OPTIONS 等

GET  猎取
POST 新增/上传
PUT  团体更新
PATCH部分更新    

3 这里的途径包括「查询参数」,但不包括「锚点」
4 假如你没有写途径,那末途径默以为 /
5 第 2 部份中的 Content-Type 标注了第 4 部份的花样

2.4相应内容花样示例
1 协定/版本号 状况码 状况诠释
2 Key1: value1
2 Key2: value2
2 Content-Length: 17931
2 Content-Type: text/html
3
4 要下载的内容

状况码要背,是效劳器对浏览器说的话
1xx 不经常使用
2xx 示意胜利【示意要求已胜利被效劳器吸收、明白、并接收】
3xx 示意滚吧【重定向,须要客户端采用进一步的操纵才完成要求】
4xx 示意你丫错了【客户端毛病】
5xx 示意好吧,我错了【效劳器毛病】
状况诠释没什么用
第 2 部份中的 Content-Type 标注了第 4 部份的花样
第 2 部份中的 Content-Type 遵照 MIME 范例

GET要求相应内容
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Connection: Keep-Alive
Content-Length: 2443
Content-Type: text/html
Date: Tue, 10 Oct 2017 09:14:05 GMT
Etag: "5886041d-98b"
Last-Modified: Mon, 23 Jan 2017 13:24:45 GMT
Pragma: no-cache
Server: bfe/1.0.8.18
Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/

<!DOCTYPE html>
<!--STATUS OK--><html> <head> 背面太长,省略了……


POST要求相应内容
HTTP/1.1 302 Found
Connection: Keep-Alive
Content-Length: 17931
Content-Type: text/html
Date: Tue, 10 Oct 2017 09:19:47 GMT
Etag: "54d9749e-460b"
Server: bfe/1.0.8.18

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"> 背面太长,省略了……

注:
1、GET 要乞降 POST 要求对应的相应能够一样,也能够不一样
2、相应的第四部份能够很长很长很长

2.5运用Chrome检察要求
翻开 Network
地点栏输入网址
在 Network 点击,检察 request,点击「view source」
点击「view source」
点击「view source」
点击「view source」
终究点了?能够看到要求的前三部份了
假如有要求的第四部份,那末在 FormData 或 Payload 内里能够看到
2.6运用Chrome检察相应
翻开 Network
输入网址
选中第一个相应
检察 Response Headers,点击「view source」
你会看到相应的前两部份
检察 Response 或许 Preview,你会看到相应的第 4 部份

    原文作者:TTTT
    原文地址: https://segmentfault.com/a/1190000019073344
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞