Nodejs笔记2

模块化

模块化初体验

模块暴露数据

导入模块

fs  写绝对路径          require写相对路径不会受到影响   ./../不能省略

js 和json文件后缀可以省略

如果存在 命名相同的js和json文件,优先导入js文件

导入文件夹时的情况

require导入模块的基本流程

         

commonJS模块化规范

包管理工具

npm

npm初始化包

init   initialization

npm搜索包

下载安装包

require导入npm包的基本流程

开发依赖和生产依赖

局部安装

npm全局安装

全局安装包的位置

装nodemon不成功,显示 无法加载文件,因为在此系统上禁止运行脚本的话,是因为执行策略受限制了

输入Set-ExecutionPolicy RemoteSigned,按y就可以解除限制了

修改windows执行策略

或者

再在集成终端中打开js文件

但第一种方法更好

powershell的权限比cmd高

Path 环境变量

npm安装包的所有依赖

node_modules文件夹不会存入版本库

当clone一个库时,没有node_modules,,此时需要先进行npm i 安装node-modules  即依赖包所存放位置的文件夹

npm安装指定版本的包  

删除依赖

npm uninstall 包名 这个也可以啊

npm配置命令别名

cnpm(了解即可,使用npm配置淘宝镜像)

 install -g cnpm --registry=http://registry.npmmirror.com

cnpm -v

npm配置淘宝镜像

切换注册地址 切换镜像时很方便

nrm ls

列出所支持的镜像地址

使用  nrm  use      + 地址名(taobao  或  npm)

taobao镜像只读不可上传            改为npm后可以上传

npm config list     检查配置是否成功

yarn

npm和yarn的选择

npm发布一个包(了解)

npm更新和删除包

包管理工具拓展介绍

nvm介绍与使用

GitHub - coreybutler/nvm-windows: A node.js version management utility for Windows. Ironically written in Go.

https://github.com/coreybutler/nvm-windows

Releases · coreybutler/nvm-windows · GitHub

https://github.com/coreybutler/nvm-windows/releases

现在我感觉还用不到nvm等用的到的时候在装

主要是现在装要重新装一堆包

改设置

等用其他版本的时候

再装nvm 

安装包放在D:nvm

安装的第一个路径询问nvm装在哪

第二个路径问nodejs装在哪

express框架介绍

初体验

路由的介绍

        

获取请求报文参数

获取路由参数

params是req 请求对象上的的一个属性 用来存储所有 的路由参数,,id  是路由参数中的一个

路由参数练习

用require函数取json文件数据

res.end   内部写一个页面  内容部分使用${result.   }    

响应设置 

send方法调用后会自动地在响应头进行字符集的设置

send   不会出现乱码

express 相应设置可以进行连贯设置

其他响应

中间件介绍

全局中间件实践

路由中间件实践

静态资源中间件

实现静态资源响应,  参数是静态资源文件夹,也就是资源根目录

获取请求体数据

防盗链

防止外部网站盗用本站资源

原理

通过referer请求头判断请求来源

路由模块化

EJS模版引擎

npm i 具有向上寻找的特性,没有必要必须在方包的文件下进行安装,可以在下一级文件内直接进行npm i

初体验       基本逻辑

ejs列表渲染

ejs条件渲染

目标效果

express框架内部写ejs

1.设置模版引擎

2.设置模版文件的存放位置

使用path转为绝对路径

模版文件:具有模版语法内容的文件

路由内的响应render

render(‘模版文件名’,‘数据’)

模版文件后缀为ejs

express-generator

-e 文件夹名

创建出一个ejs框架文件夹

第一步:安装依赖  npm  i

app.js文件内

文件上传报文

文件上传也是在发送htp请求报文

express处理文件上传

存放文件名

案例

表单数据的提去

lowdb了解

shortid 

mongoDB

下载与安装

命令

数据库操作应用场景

mongoose

上文的mongodb命令行内交互命令

手动键入   极为麻烦

故而存在Mongoose包

使用流程

链接数据库补充说明

插入文档

在open的回调函数中进行

字段类型

字段验证   对文档属性的值进行验证

文档结构对象内书写

删除文档

条件删除

更新文档

{条件}{新的文档内容}  回调函数

更新单条

批量更新

读取文档

读取单条文档信息

根据ID获取文档

 

批量获取

条件控制

 

个性化读取

代码模块化

进行拆分

将重复代码放在db。js文件内

内部重复代码放入暴露函数内

抽离出来连接相关的操作

通过暴露函数实现对数据库的连接

模块化 二

结构对象和模型对象的创建是重复的

config文件用来设置db文件mongodb服务中连接数据库路径

图形化管理工具

案例记账本-结合数据库

模型文件

接口

接口的作用:实现前后端通信

restfulAPI

json-server

实例

搭建临时的接口服务

接口测试

启动json - server

Apipost

公共参数

放在同一个文件加下

公共请求头   查询字符串  请求体

文档功能

postman

会话控制

cookie

cookie特点

cookie信息放在请求头当中

流程

浏览器操作cookie

express中设置cookie

 express中删除cookie

这个cookie是一个临时对象,普通对象可以写的他基本都可以(设置cookie内容无限制)

express中读取cookie

session

 session中间件配置

设置中间件中第二个属性  又称    加盐

session的设置

session的读取

session的销毁

session和cookie的区别

注册流程

179-185

token

jwt

创建token

校验字符串

本地域名

配置HTTPS证书

服务器端完成

前后端开发拓展介绍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/12397.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

其它高阶数据结构①_并查集(概念+代码+两道OJ)

目录 1. 并查集的概念 2. 并查集的实现 3. 并查集的应用 3.1 力扣LCR 116. 省份数量 解析代码1 解析代码2 3.2 力扣990. 等式方程的可满足性 解析代码 本篇完。 写在前面: 此高阶数据结构系列,虽然放在⑤数据结构与算法专栏,但还是作…

【数据可视化01】matplotlib实例介绍4之六边形分箱图

目录 一、引言二、实例介绍 一、引言 hexbin是一个二维直方图,其中箱子是六边形,颜色表示每个箱子内的数据点数。 二、实例介绍 import matplotlib.pyplot as plt import numpy as np# Fixing random state for reproducibility np.random.seed(19680…

服务器利用率的神器脚本

在服务器管理的过程中,了解服务器的各项性能指标是至关重要的。无论是CPU的负载情况,内存使用情况,还是硬盘的存储空间以及TCP连接状态,这些都是我们判断服务器健康状态和性能的重要依据。然而,手动一项项去检查这些指…

【MySQL】Mysql——安装指南(Linux)

MySQL8.0.26-Linux版安装 1. 准备一台Linux服务器 云服务器或者虚拟机都可以; Linux的版本为 CentOS7; 2. 下载Linux版MySQL安装包 3. 上传MySQL安装包 4. 创建目录,并解压 mkdir mysqltar -xvf mysql-8.0.26-1.el7.x86_64.rpm-bundle.tar -C mysql5. 安装mysql的安装包 …

pip镜像源

1.1 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple 1.2 阿里云 https://mirrors.aliyun.com/pypi/simple/ 1.3 网易 https://mirrors.163.com/pypi/simple/ 1.4 豆瓣 https://pypi.douban.com/simple/ 1.5 百度云 https://mirror.baidu.com/pypi/simple/ 1.6 中科大 ht…

uniapp vue 获取天气数据

获取当前地址,通过高德天气数据,来展示天气温度风度等数据 //获取天气 getWeather(){// 获取天气预报uni.request({url: https://restapi.amap.com/v3/weather/weatherInfo, data: {city: 长沙,// extensions:all,key: xxxxxxxxxx//自己的高德密钥key},…

2024OD机试卷-转盘寿司 (java\python\c++)

题目:转盘寿司 题目描述 寿司店周年庆,正在举办 优惠活动 回馈新老客户。 寿司转盘上总共有 n 盘寿司,prices[i] 是第 i 盘寿司的价格, 如果客户选择了第 i 盘寿司,寿司店免费赠送客户距离第 i 盘寿司最近的下一盘寿司 j,前提是 prices[j] < prices[i],如果没有满足…

RAG 面向 LLM: 基于检索增强的大语言模型调研

摘要 作为 AI 领域最先进的技术之一,检索增强生成(RAG)技术可以提供可靠和最新的外部知识,为众多任务提供巨大的便利。特别是在 AI 生成内容(AIGC)时代,RAG 中检索强大的提供额外知识的能力使得检索增强生成能够辅助现有生成式 AI 生产高质量输出。最近,大语言模型(LLM)在语言…

Zoho CRM企业成长的智能引擎,智能化销售自动化

数字化时代&#xff0c;客户体验已成为企业竞争的核心要素。卓豪Zoho CRM&#xff0c;作为全球领先的SaaS云端客户关系管理平台&#xff0c;正引领着一场企业运营模式的变革&#xff0c;助力超过25万家企业跨越180多个国家&#xff0c;实现客户互动与业务增长的无缝对接。让我们…

广汽原车控制系统CAN协议控制汽车基本信息获取及数据应用

在现代汽车工业的迅速发展中&#xff0c;车辆控制系统的智能化和网络化已成为提升汽车性能的关键。广汽作为中国汽车行业的佼佼者&#xff0c;其在原车通信网络方面也取得了显著的成就。特别是广汽原车CAN&#xff08;Controller Area Network&#xff09;协议的应用&#xff0…

2024OD机试卷-分割均衡字符串 (java\python\c++)

题目:分割均衡字符串 题目描述 均衡串定义: 字符串 中只包含两种字符,且这两种字符的个数相同。 给定一个均衡字符串,请给出可分割成新的均衡子串的最大个数。 约定:字符串中只包含大写的 X 和 Y 两种字符。 输入描述 字符串的长度:[2, 10000]。 给定的字符串均为均…

添砖Java之路(其六)——通过集合制作的学生信息管理系统

目录 前言&#xff1a; 源码&#xff1a; 前言&#xff1a; 我对于集合的理解&#xff0c;感觉就类似于顺序表这样的数据结构&#xff0c;然后他存储的数据不能是基本类型&#xff0c;如果要用也只能用对应基本数据的包装类。 对于集合有很多方法&#xff0c;我的建议就是去…

【运维】nvidia-smi错误信息:Failed to initialize NVML: Driver/library version mismatch

【运维】错误信息&#xff1a;Failed to initialize NVML: Driver/library version mismatch 是因为Nvidia的驱动冲突的原因 本地部署&#xff1a;本地Docker容器部署&#xff0c;本地验证后打包镜像 远程部署&#xff1a;镜像部署阿里云PAI EAS 因为在容器中安装了驱动版本&a…

短视频最后的慢动作怎么做:成都鼎茂宏升文化传媒公司

短视频最后的慢动作怎么做&#xff1a;技巧与创意实践指南 在短视频创作的浩瀚宇宙中&#xff0c;慢动作特效如同一颗璀璨的星辰&#xff0c;为作品增添无限魅力与情感深度。它不仅能够放大细节之美&#xff0c;还能延长关键瞬间&#xff0c;引发观众强烈的情感共鸣。短视频最…

SpringBoot项目的项目部署全过程

一、前端 安装nginx 1.将提前准备好的nginx的安装包上传到Linux中/opt目录下(我用的是Xftp) 2.解压 2.1:在xshell中解压该文件: tar -zxvf nginx-1.20.1.tar.gz 2.2:进入解压后的目录 cd nginx-1.20.1/ 2.3:安装需要的依赖 yum -y install zlib zlib-devel openssl openssl-de…

html特殊字符的html,js,css写法汇总

⇠ 箭头类 符号UNICODE符号UNICODEHTMLJSCSSHTMLJSCSS⇠&#8672\u21E0\21E0⇢&#8674\u21E2\21E2⇡&#8673\u21E1\21E1⇣&#8675\u21E3\21E3↞&#8606\u219E\219E↠&#8608\u21A0\21A0↟&#8607\u219F\219F↡&#8609\u21A1\21A1←&#8592\u2190\2…

FreeRTOS【4】线程挂起和恢复

1.开发背景 基于上一篇指引&#xff0c;成功创建并启动线程后&#xff0c;线程已经开始运行了&#xff0c;但是有时我们需要线程暂停运行&#xff0c;例如某个线程是控制 LED 闪灯的&#xff0c;如果现在需要让 LED 停止工作&#xff0c;单纯的关闭 LED 是没用的&#xff0c;因…

Python中json数据的常用操作函数:dump load dumps和loads

文章目录 dump函数load函数dumps函数loads函数 dump函数 功能&#xff1a;将Python对象序列化为JSON格式的字符串&#xff0c;并写入到文件中。这个方法用于将数据保存到文件中。语法&#xff1a;json.dump(需要进行json序列化的Python对象, 写入的文件路径) load函数 功能&…

文科生在三本院校,读计算机专业

6岁&#xff0c;进入村小&#xff0c;一年级&#xff0c;老师问我的梦想是什么&#xff0c;我说我长大了我要成为科学家。 9岁&#xff0c;三年级&#xff0c;知道科学家不现实&#xff0c;开始学习英语。又因为科学家英语不好发音&#xff0c;于是我的梦想变了&#xff0c;长…

ZCC5503 18V 1A 6uA低静态功耗 同步降压控制器

1. 概要 ZCC5503R 是一款基准电压源、振荡电路、 比较器 PWM/PFM 控制器构成的 CMOS 降压电路调整器&#xff0c;利用 PWM/PFM 自动切换控制电路达到可调占空比&#xff0c;具有全输入电压范围&#xff08;3~18V &#xff09;内的低纹波、高效率及大电流输出等特点. 2. 产品特性…