前端基础(http协议相关篇)

网络协议篇:

1.http请求过程

DNS解析——tcp三次握手——建立tcp连接后发起http请求——服务器响应http请求

——浏览器得到资源——浏览器渲染

2.http报文

通用首部:可以出现在请求报文,也可出现在响应报文

请求报文:请求行(包含请求方法和请求URL)、请求头部(header)、空行和请求数据4个部分组成

响应报文: 状态行(包含http版本、状态码、原因短语)、消息报头、响应正文

3.请求方法

get:普通的请求服务器资源

head:只返回头部信息,用于在客户端为获取实际资源的情况下对资源的首部进行检测,比如检测资源类型、资源是否被修改、某个资源对象是否存在等。

options:探测服务所能支持的所有请求方法或者指定API支持的方法,多用在CORS中

put:向服务器写入文档,它让服务器允许用请求主体来创一个由请求URL命名的文档,若该文档已存在,则会将其替换调(即修改)。

delete:删除服务器上的某个资源

trace:因http在请求的过程中会经过防火墙、代理、网关等应用程序,而每个中间点都可能改变原始的http请求,故trace的作用就是在最后一站的服务器弹回一个Trace相应,并把原始的请求报文加到该响应的实体里,如此客户端就可以与之进行对比,看看有没发生变化,如果有发生了怎样的变化。

扩展方法:

lock:允许用户“锁定”某一资源,必然在编辑的时候

mkcol:允许创建资源

copy:便于在服务器上复制资源

move:在服务器上移动资源

4.状态码

信息类 100-199

响应成功 200-299

重定向 300-399

客户端错误 400-499

服务器端错误 500-599

http协议一般基于TCP协议传输,之所以不基于UDP,是因为UDP容易丢包,但其在传输速度上有优势。

时间: 2024-10-25 11:01:33

前端基础(http协议相关篇)的相关文章

使用WebRTC搭建前端视频聊天室——数据通道篇

转自 使用WebRTC搭建前端视频聊天室——数据通道篇 在两个浏览器中,为聊天.游戏.或是文件传输等需求发送信息是十分复杂的.通常情况下,我们需要建立一台服务器来转发数据,当然规模比较大的情况下,会扩展成多个数据中心.这种情况下很容易出现很高的延迟,同时难以保证数据的私密性. 这些问题可以通过WebRTC提供的RTCDataChannel API来解决,他能直接在点对点之间传输数据.这篇文章将介绍如何创建并使用数据通道,并提供了一些网络上常见的用例 为了充分理解这篇文章,你可能需要去了解一些RT

HTTP协议——深入篇

HTTP协议——深入篇 我们知道HTTP是由请求和响应两部分组成当你在Web浏览器中输入一个URL时,浏览器将根据你的要求创建并发送请求,该请求包含所输入的URL以及一些与浏览器本身相关的信息.当服务器收到这个请求时将返回一个响应,该响应包括与该请求相关的信息以及位于指定URL(如果有的话)的数据.直到浏览器解析该响应并显示出网页(或其他资源)为止. HTTP请求 HTTP请求的格式如下所示: <request-line><注释--请求行--> <headers><

web前端入坑第五篇:秒懂Vuejs、Angular、React原理和前端发展历史

秒懂Vuejs.Angular.React原理和前端发展历史 2017-04-07 小北哥哥 前端你别闹 今天来说说 "前端发展历史和框架" 「前端程序发展的历史」 「 不学自知,不问自晓,古今行事,未之有也 」 我们都知道如今流行的框架:Vue.Js.AngularJs.ReactJs.已经逐渐应用到各个项目和实际应用中,它们都是MVVM数据驱动框架系列的一种. 在了解MVVM之前,我们先回想一下前端发展的历史阶段,做到心中有数,才会更好理解. 这段回想历史.由于网上就可查不少资料,

前端基础html

前端基础之html HTML 初识 web服务本质 import socket def main(): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.bind(('localhost',8081)) sock.listen(5) while True: print("server is working.....") conn, address = sock.accept() request = conn.re

8月5日前端基础复习

复习前端基础相关知识 ctrl+tab 切换文档ctrl+tab 切换程序alt+F4 关闭程序F2 重命名F5 刷新页面windows+D 显示桌面windows+E 打开资源管理器—————— 浏览器发送过去,就是请求报文,服务器返回的信息就是响应报文.在服务器上应该存在我们请求的页面的数据.————————HTML:超文本标记语言.html是一个网页文件的扩展名.和txt,jpg,mp3是一样的.html文件就是网页文件.后缀名和文件之间是没有直接关系的.后缀名仅仅决定了文件的打开方式.真

day 46 前端基础 基本框架

HTML标签格式 HTML标签是由尖括号包围的关键字,如<html>, <div>等 HTML标签通常是成对出现的,比如:<div>和</div>,第一个标签是开始,第二个标签是结束.结束标签会有斜线. 也有一部分标签是单独呈现的,比如:<br/>.<hr/>.<img src="1.jpg" />等. 标签里面可以有若干属性,也可以不带属性. 标签的语法: <标签名 属性1="属性值1

前端基础:HTML标签(下)

前端基础HTML标签(下) 1.表单 表单的功能主要用于向服务器传输数据,从而实现客户端与Web服务器的交互.表单能够包含input系列标签,比如:文本字段.复选框.单选按钮.提交按钮等:表单还包含textarea.select和label标签: 表单的属性:action,将表单数据提交到指定服务器的某个程序,程序收到表单提交过来的数据(即表单数据)做相应处理,比如:https://baidu.com:**method**,表单的提交方式get/post/update等,默认为get: 注意 f

EnjoyingSoft之Mule ESB基础系列第三篇:Mule message structure - Mule message结构

目录 1. 探索Mule Message结构 2. Mule Message的Payload 3. Mule Message的Property 4. Mule Message的Attachment 5. Mule的Variable 6. 使用Java操作Mule Message Mule ESB是一个使用Java语言编写的开源企业服务总线,企业服务总线英文Enterprise Service Bus,简称ESB.其相关源代码也托管在GitHub上,可以在https://github.com/mu

关于shell脚本基础编程第四篇

shell脚本基础编程第四篇本章主要内容:函数 函数 function:             function 名称 { 命令 ; } 或 name () { 命令 ; }           定义 shell 函数.               创建一个以 NAME 为名的 shell 函数.当作为一个简单的命令启用时,           NAME 函数执行调用 shell 的上下文中的 COMMANDs 命令.当 NAME           被启用时,参数作为 $1...$n 被传递