8.8k 8 分钟

# 初始 Express # Express 简介 # 概念 官方给出的概念:Express 是基于 Node.js 平台,快速、开放、极简的 Web 开发框架 # 理解 Express 对 Node.js 提供的原生 http 进行了封装,能够提高开发效率 # 作用 Web 网站服务器:专门对外提供 Web 网页资源的服务器 API 接口服务器:专门对外提供 API 接口的服务器 # Express 基本使用 # 安装 npm i express@4.17.1 # 创建基本的 Web 服务器 // 1. 导入 expressconst express =...
2.3k 2 分钟

# 了解同源策略和跨域 # 同源策略 # 同源概念 如果两个页面的协议,域名和端口都相同,则两个页面具有相同的源 # 同源策略概念 同源策略(英文全称 Same origin policy)是浏览器提供的一个安全功能 通俗的理解:浏览器规定,A 网站的 JavaScript,不允许和非同源的网站 C 之间,进行资源的交互 # 跨域 # 跨域概念 同源指的是两个 URL 的协议、域名、端口一致,反之,则是跨域。 # 浏览器对跨域请求的拦截 注意:浏览器允许发起跨域请求,但是,跨域请求回来的数据,会被浏览器拦截,无法被页面获取到! #...
2.4k 2 分钟

# 客户端与服务器 # 服务器 # 概念 上网过程中,负责存放和对外提供资源的电脑,叫做服务器 # 图解 # 客户端 # 概念 上网过程中,负责获取和消费资源的电脑,叫做客户端 # 图解 # URL 地址 # URL 地址概念 URL(全称是 UniformResourceLocator)中文叫统一资源定位符,用于标识互联网上每个资源的唯一存放位置 浏览器只有通过 URL 地址,才能准确定位资源的存放位置,从而成功访问到对应的资源 # URL 地址的组成部分 客户端与服务器之间的通信协议 存在该资源的服务器名称 资源再服务器上具体的位置 # 分析网页打开过程 #...
3k 3 分钟

# HTTP 协议简介 # 通信 # 通信概念 通信,就是信息的传递和交换 # 通信三要素 通信的主体:服务器和客户端浏览器 通信的内容:传输的数据内容 通信的方式:响应,请求等等 # 通信协议概念 通信协议(Communication Protocol)是指通信的双方完成通信所必须遵守的规则和约定 # 互联网中的通信协议 客户端与服务器之间要实现网页内容的传输,则通信的双方必须遵守网页内容的传输协议 网页内容又叫做超文本,因此网页内容的传输协议又叫做超文本传输协议(HyperText Transfer Protocol) ,简称 HTTP 协议 # HTTP # HTTP...
9.1k 8 分钟

# XMLHttpRequest 的基本使用 # 什么是 XMLHttpRequest XMLHttpRequest(简称 xhr)是浏览器提供的 Javascript 对象,通过它,可以请求服务器上的数据资源。之前所学的 jQuery 中的 Ajax 函数,就是基于 xhr 对象封装出来的。 # 使用 xhr 发起 GET 请求 # 步骤 创建 xhr 对象 调用 xhr.open () 函数 调用 xhr.send () 函数 监听 xhr.onreadystatechange 事件 # 代码实现 // 1. 创建 XHR 对象var xhr = new...
1.1k 1 分钟

# Nginx 概述 # Nginx 介绍 Nginx 是一款轻量级的 Web 服务器 / 反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点就是占用内存少,并发能力强,事实上 nginx 的并发能力在同类型的网页服务器中表现较好,中国大陆使用 nginx 的网站有:百度,京东,新浪,网易,腾讯,淘宝等 Nginx 是由伊戈尔 - 塞索耶夫为俄罗斯访问量第二的 Rambler.ru 站点卡覅的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日 # Nginx 下载和安装 # 安装过程 安装依赖包 yum -y install gcc pcre-devel...
5.2k 5 分钟

# Linux 简介 # 不同应用领域的主流操作系统 # 分类 桌面操作系统 服务器操作系统 移动设备操作系统 嵌入式操作系统 # 桌面操作系统 Windows Mac OS Linux # 服务器操作系统 UNIX(安全,稳定,付费) Linux(安全,稳定,免费,占有率高) Windows Server(付费,占有率低) # 移动设备操作系统 Android IOS # 嵌入式操作系统 Linux(机顶盒,路由器,交换机) # Linux 系统历史 时间:1991 年 人物:Linus Torvalds 开发语言:c 语言、汇编语言 # Linux 系统版本 #...
2.4k 2 分钟

# Git 概述 # Git 简介 Git 是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理,通过 Git 仓库来存储和管理这些文件,Git 仓库分为两种 本地仓库:开发人员自己电脑上的 Git 仓库 远程仓库:远程服务器上的 Git 仓库 commit:提交,将本地文件和版本信息保存到本地仓库 push:推送,将本地仓库文件和版本信息上传到远程仓库 pull:拉取,将远程仓库文件和版本信息下载到本地仓库 # Git 代码托管服务 # 常用 Git...
7.3k 7 分钟

# 初识 Redis # 认识 Redis Redis 诞生于 2009 年全称是 Remote Dictionary Server,远程词典服务器,是一个基于内存的键值型 NoSQL 数据库 特征: 键值(key-value)型,value 支持多种不同数据结构,功能丰富 单线程,每个命令具备原子性 低延迟,速度快(基于内存、IO 多路复用、良好的编码) 支持数据持久化 支持主从集群、分片集群 支持多语言客户端 # 安装 Redis # 单机安装 Redis # 安装 Redis 依赖 Redis 是基于 C 语言编写的,因此首先需要安装 Redis 所需要的 gcc 依赖 yum...
5.8k 5 分钟

# 数据结构 # 动态字符串 SDS # 介绍 Redis 中保存的 Key 是字符串,value 往往是字符串或者字符串的集合,Redis 构建了一种新的字符串结构,称为简单动态字符串(Simple Dynamic String),简称 SDS 不过 Redis 没有直接使用 c 语言中的字符串,因为 c 语言存在以下问题 获取字符串长度需要通过运算 非二进制安全 不可修改 # 扩容机制 新字符串小于 1M,则新空间为扩展后字符串长度的两倍 + 1 新字符串大于 1M,则新空间为扩展后字符串长度 + 1M+1,称为内存预分配 优点 获取字符串长的的时间复杂度为 O...