day15_kls

课程内容

HTTP

http超文本传输协议

url&&uri&&urn

image.png

url的规范
card-last-interval:: -1
card-repeats:: 1
card-ease-factor:: 2.5
card-next-schedule:: 2024-03-06T16:00:00.000Z
card-last-reviewed:: 2024-03-06T02:41:01.223Z
card-last-score:: 1

card-last-score:: 1
card-repeats:: 1
card-next-schedule:: 2024-08-05T16:00:00.000Z
card-last-interval:: -1
card-ease-factor:: 2.5
card-last-reviewed:: 2024-08-05T07:47:11.561Z

概念 说明 举例
scheme 协议也叫protocol http,https,ftp
username:password 认证
parameters 参数 ?id=123
fragment 片段,对资源描的补充 vue的路由

请求头

请求头 含义
User-Agent 标识客户端发送请求的用户代理(User Agent),通常是浏览器或其他应用程序的标识。
Accept 指定客户端可接受的响应媒体类型。服务器可以根据该头部信息返回适合客户端的响应。
Content-Type 指定请求体的媒体类型。
Authorization 包含了用于进行身份验证的凭证信息。通常用于向服务器提供身份验证令牌或用户名密码。
Cookie 包含了之前由服务器通过Set-Cookie头发送的Cookie信息。
Referer 标识了发送请求的页面的URL地址。服务器可以根据该头部信息判断请求的来源。
Content-Length 请求体的字节长度。
Host 指定请求的目标服务器的主机名和端口号。
If-Modified-Since 指定一个日期时间,表示如果资源自指定日期时间之后未被修改,才执行请求的操作。用于缓存控制和条件请求。
Cache-Control 控制缓存行为,包含了一系列指令,如max-age、no-cache等。
X-Requested-With 标识请求是通过Ajax发送的。

请求方式

请求方法 描述
GET 用于从服务器获取资源。请求的URL中包含要获取的资源的地址。GET方法是幂等的,多次相同的GET请求应该返回相同的结果。
POST 用于向服务器提交数据,并在服务器上创建新资源。通常用于提交表单数据、上传文件等。POST方法不是幂等的,多次相同的POST请求可能会创建多个资源。
PUT 用于向服务器上传或覆盖指定URL处的资源。PUT方法要求完全替换目标资源,如果目标资源不存在,则创建一个新资源。
DELETE 用于从服务器删除指定URL处的资源。DELETE方法用于删除指定资源,删除成功后返回204状态码或200状态码。
PATCH 用于对资源进行部分更新。PATCH方法类似于PUT方法,但是只需要传输要更新的字段。
HEAD 与GET方法类似,但只返回响应头部信息,不返回响应体。HEAD方法通常用于检查资源是否存在,获取资源的元数据等。
OPTIONS 用于获取服务器支持的请求方法、CORS(跨域资源共享)相关的信息等。OPTIONS方法请求返回服务器支持的HTTP方法列表。
TRACE 用于在请求-响应链路上执行一个回环诊断。TRACE方法会在目标服务器返回接收到的请求的完整副本,用于调试和诊断。
CONNECT 用于将请求连接转换为透明的TCP/IP隧道,通常用于代理服务器的通信。CONNECT方法通常用于HTTPS请求。

相应码

状态码 含义 说明
100 Continue 服务器已接收到请求的首部,客户端应继续发送请求主体部分
101 Switching Protocols 服务器已根据请求要求切换协议
200 OK 请求成功完成
201 Created 请求成功并创建了新资源
202 Accepted 请求已被接受,但处理尚未完成
203 Non-Authoritative Information 请求成功,但返回的信息来自第三方,非官方来源
204 No Content 服务器成功处理了请求,但响应中不包含返回的实体内容。
205 Reset Content 请求成功完成,客户端应重置当前页面
206 Partial Content 客户端只请求资源的一部分,服务器成功地响应了该部分
300 Multiple Choices 请求的资源存在多个选择,用户或代理可以选择其一进行重定向
301 Moved Permanently 资源的URL已永久移动到新位置
302 Found 资源的URL已临时移动到新位置
303 See Other 对应当前请求的响应可以在另一个URL下找到
304 Not Modified 资源未修改,客户端可以使用缓存的版本
307 Temporary Redirect 对应当前请求的响应可以在另一个URL下找到,但请继续使用原始请求URL进行访问
308 Permanent Redirect 对应当前请求的响应可以在另一个URL下找到,客户端应使用新的URL进行访问
400 Bad Request 请求无效或无法被服务器理解
401 Unauthorized 请求需要身份验证
402 Payment Required 预留状态码,表示需要付款才能访问请求的资源
403 Forbidden 请求被服务器拒绝访问
404 Not Found 请求的资源不存在
405 Method Not Allowed 请求方法不被允许
406 Not Acceptable 服务器无法根据请求的内容特性完成请求
407 Proxy Authentication Required 请求要求代理身份验证
408 Request Timeout 服务器在等待请求时超时
409 Conflict 请求存在冲突,服务器无法处理
410 Gone 请求的资源已永久消失
411 Length Required 服务器要求在请求中包含Content-Length首部
412 Precondition Failed 请求条件失败,例如请求头中指定的一些前提条件未满足
413 Payload Too Large 请求实体过大,超出服务器的处理能力
414 URI Too Long 请求的URI过长,服务器无法处理
415 Unsupported Media Type 请求的媒体类型不受支持
416 Range Not Satisfiable 服务器无法满足请求中的Range头字段指定的范围
417 Expectation Failed 服务器无法满足Expect请求头字段指定的期望值
429 Too Many Requests 客户端在给定的时间内发送了太多请求
500 Internal Server Error 服务器内部错误
501 Not Implemented 服务器不支持当前请求的功能或未能实现
502 Bad Gateway 服务器作为网关或代理,从上游服务器接收到无效的响应
503 Service Unavailable 服务器暂时无法处理请求
504 Gateway Timeout 服务器作为网关或代理,未能及时从上游服务器接收到响应
505 HTTP Version Not Supported 服务器不支持请求中所用的HTTP协议版本
-

csrf

客户端请求伪造,该漏洞的前提是请求参数可控

F12元素与网页源代码的区别

F12元素查看的内容是当前网页上真实的显示,会经过js渲染

源代码顾名思义就是源代码