代码编织梦想

前端网络基础 - Token-爱代码爱编程

目录 Session认证机制存在的问题 Token令牌 Token令牌认证的特点 Json Web Token node第三方模块jsonwebtoken的使用 sign方法 verify方法 verify校验异常情况 基于jsonwebtoken模块完成Token身份认证 实现步骤 实现代码 Token身份认证的优缺点 Toke

前端网络基础 - Session-爱代码爱编程

目录 Cookie的安全性 Cookie真的安全吗 Cookie内容为什么不能是用户名和密码 Session Session的实现 session存储在内存中的优缺点 session存储在数据库中的实践 session存储在数据库中的优缺点 session和cookie对比 跨站请求与cookie禁用时的session Coo

前端网络基础 - Cookie-爱代码爱编程

目录 HTTP协议的无状态性 HTTP协议三大特点 HTTP协议无状态性的优缺点 HTTP协议无状态性的解决方案 Cookie Cookie是啥 Cookie技术的具体工作流程 cookie的组成 服务器端手动生成cookie 浏览器端自动保存以及发送cookie cookie的有效期 expires和max-age的区别 e

前端网络基础 - 跨域xhr/fetch-爱代码爱编程

目录 浏览器的同源策略 如何定义同源 什么是跨域 JSONP跨域 script标签的特点 JSONP实现原理 JSONP的缺点 JSONP的安全问题防护策略 CORS响应头跨域 Access-Control-Allow-Origin 跨域请求的分类 简单跨域请求 非简单跨域请求 对比JSONP跨域 代理服务器跨域 浏览器

前端网络基础 - fetch-爱代码爱编程

目录 XMLHttpRequest缺点 fetch的优点 fetch的请求和响应设计 Request Response fetch函数的用法 fetch取消请求 fetch的异常结果 fetch和axios的区别 XMLHttpRequest缺点 浏览器提供了原生的AJAX实现类XMLHttpRequest,基于该类实例,我们可以

前端网络基础 - axios源码分析-爱代码爱编程

前端网络基础 - axios使用_qfc_128220的博客-CSDN博客 在上一节中,我们分析了axios的基本使用,其中有很多让人一时无法参悟透奥妙的设计。我们来逐一通过源码解析下。 目录 axios为什么既可以作为函数发送AJAX,也可以作为对象调用get,post等方法发送AJAX? Axios类 axios 默认的axios函数和

前端网络基础 - axios使用-爱代码爱编程

目录 XMLHttpRequest的缺点 axios初体验 axios发送AJAX的API axios axios.METHOD axios默认配置 axios.defaults.baseURL axios.defaults.headers axios实例 axios请求配置 axios正常响应结果 axios异常响应结果 axi

前端网络基础-通过XMLHttpRequest实现AJAX (二)-爱代码爱编程

前端网络基础-通过XMLHttpRequest实现AJAX_qfc_128220的博客-CSDN博客 前面讨论了如何通过XMLHttpRequest实现基本的AJAX,即如何发送异步的HTTP请求,如何接收异步的HTTP响应。 但是没有考虑到HTTP请求的正常过程,HTT请求的异常场景:请求超时,HTTP请求发生异常(网络错误),以及如何取消一个HTT

前端网络基础-通过XMLHttpRequest实现AJAX(一)-爱代码爱编程

目录 认识AJAX AJAX是什么 为什么AJAX这么重要 AJAX牛在哪 基于XMLHttpRequest实现AJAX XMLHttpRequest是什么 xhr对象 如何通过xhr设置HTTP请求 xhr.open方法 xhr.setRequestHeader方法 xhr.send方法 小结 如何通过xhr监听异步的HTTP响

前端网络基础-GET和POST的区别-爱代码爱编程

GET和POST是HTTP协议最常用的两种请求方法。所以我们需要了解它们之间的区别,才能更好,更合适地使用它们。 目录 GET和POST的本质区别是它们的设计初衷 GET和POST在使用上的差异 触发请求的方式 如何携带请求数据? 携带的数据大小是否有限制,限制是多少? 请求参数是否可以被缓存? 请求参数的编码方式 请求参数的格式

前端网络基础-应用层HTTP协议-爱代码爱编程

目录 什么是HTTP协议 URL与URI HTTP协议的报文结构 HTTP请求方法 GET请求方法 POST请求方法 HTTP响应状态码 HTTP报文头 HTTP无状态性 什么是HTTP协议 HTTP(Hypertext Transfer Protocol):超文本传输协议。 那么说到超文本,我们就会想到HTML (Hyper Te

前端网络基础-应用层DNS协议-爱代码爱编程

目录 初识域名 正向解析和反向解析 DNS解析 主机本地hosts文件实现DNS解析 浏览器缓存实现DNS解析 本地DNS服务器实现DNS解析 域名的组成 DNS迭代解析 DNS递归解析 DNS协议 浏览器地址栏输出一个网址后的DNS解析流程 初识域名 ​  一个网址组成如上图所示 其中服务器地址部分,既支持IP地址,也支持域

前端网络基础-传输层UDP协议-爱代码爱编程

UDP(User Dategram Protocol)即用户数据报协议 它也是传输层协议。 我们需要知道数据分为重要数据和不重要数据,比如你发了一封邮件,下载文件,这些都是重要数据,少了一点,可能文件就会报错,打不开,所以对于这些数据,我们看重的是完整性,正确性。 但是比如你看网络直播,或打IP电话,打网络游戏,这种对数据实时性要求比较高,对数据

前端网络基础-TCP为啥这么可靠-爱代码爱编程

我们知道TCP是面向连接的可控传输协议。它是一种可靠的传输机制。 那么它到底哪里可靠呢? 我们在网络中进行数据传输时,可能会遇到的问题有: 1、丢包 2、重包 3、错包 丢包,即数据包传输过程中丢失了,接收方没有收到。 重包,即相同数据包重复发送了,接收方收到了多个相同包。 错包,即数据包在传输过程中被篡改了,接收方收到了错误的包。

前端网络基础-传输层TCP协议-爱代码爱编程

目录 前情回顾 传输层基本工作任务 可靠传输的实现 TCP报文头格式 TCP三次握手过程 两次握手为什么不能建立TCP连接 第三次握手报文丢失 wireshark抓包演示TCP三次握手过程 TCP四次挥手过程 为什么第三次挥手不能和第二次挥手合并  为什么第四挥手后,发送方要等待2MSL时间后才能关闭TCP连接 为什么建立TCP连接

前端网络基础-跨网段ARP请求过程-爱代码爱编程

前端网络基础-网络层的ARP协议_qfc_128220的博客-CSDN博客 之前介绍过根据ip地址获取同一子网下的其他主机的mac地址 那么如何根据跨网段ip地址,即获取不在同一子网下的其他主机的mac地址呢? 1、主机A网络层在收到数据,并封装为数据包后,准备发送数据包之前,根据IP协议来判断:目标IP地址和自身IP地址是否在同一个子网,发现目

前端网络基础-网络层IP协议和路由协议-爱代码爱编程

上一节中,我们知道两台主机如果想要通信,则主机A必须要知道主机B的ip地址和mac地址,如果不知道,则主机A会广播一条arp协议请求给同一子网下的所有主机。 那么什么叫同一子网下呢? 我们知道主机A的ip地址是 192.168.0.118                主机B的ip地址是 192.168.0.101 那么它们属于同一子网吗?

前端网络基础-网络层的ARP协议-爱代码爱编程

无论是OSI七层网络模型,还是TCP/IP四层网络模型,它们都有一个网络层。 网络层的作用有如下几个: 1、根据目标IP找到目标设备的MAC地址,帮助后续数据链路层的数据封装MAC头部 2、IP寻址 3、最优路径 这里我们先讨论1:网络层如何根据目标IP找到目标设备的MAC地址。 网络层有一个协议ARP(address resolution

前端网络基础-网络分层模型-爱代码爱编程

OSI七层网络模型中各层的作用   物理层 物理层提供了两台机器互联的物理链路,比如网线(双绞线,光纤),无线网(电波)。 物理层不仅提供了物理链路,还提供了数据传输能力,比如双绞线使用电信号,光纤使用光信号,无线网使用电波信号,实现数据传输。 物理层使用信号来模拟出二进制数据0和1,来实现复杂数据的简单表示,所以物理层中数据也被称为比特

Cookie,Session,JWT-爱代码爱编程

HTTP协议 HTTP协议是一种无状态的协议。 早期WEB为了推广,需要一种可以快速共享资源的网络传输协议,这种协议旨在从服务器快速推送资源给任意一个客户端,而不在乎访问者是谁,后面就发明了HTTP协议。HTTP协议的无状态性是指HTTP协议无法记录传输过程中访问者是谁。 但是,随着WEB的发展,各种致力于为私人用户提供特定服务的服务器开始出现,比如