nodejs初学篇

NodeJS

package.json

NodeJS 项目的配置文件

$ npm init -y

安装的三方包资源也可以添加到这个文件中保存,以便于项目移植。

可以在 package.json 中添加 npm scripts 运行脚本。

安装三方包

$ npm install <package-name> -g --save-dev

CommonJS 模块化规范

定义模块:module.exports = {}exports.xx = yy

引入模块:require(路径名称)

注意,通常 require() 引入模块时,如果是 NodeJS 本身的核心模块,或是安装的第三方模块,直接通过模块名称引入。如果是自已定义的模块,则需要使用相对路径或绝对路径引入,如:require('./module.js')

模块化规范:

AMD - require.js

CMD - sea.js

CommonJS - NodeJS: module.exports/exports require

ES6 - import/export

利用 NodeJS 实现 WebServer

/* 创建一个 WebServer */
// 1. 引入核心模块
const http = require('http')
// 2. 创建服务器
const server = http.createServer((request, response) => {
  // 请求的资源路径,请求方式
  const { url, method } = request
  // 返回响应,调用 end() 方法告诉客户端响应结束
  response.setHeader('Content-Type', 'text/html;charset=utf-8')
  response.end(
    'hello nodejs,你所请求的 url: ' + url + ',你的请求方式为:' + method
  )
})
// 3. 在指定端口实现监听
server.listen(3000, () => {
  console.log('server running at http://localhost:3000')
})

nodemon

是一个辅助工具,可以监视文件的改变,在文件改变时自动重启 node 应用

$ npm i nodemon -g

安装完毕后,可以直接使用 nodemon 命令来替换以前 node 命令的使用。

MongoDB

MongoDB 是一个基于分布式文件存储的数据库

概念

database :数据库(db)

collection:集合,相当于是 MySQL 中的 table

document:文档,相当于是 MySQL 中表格里的 row

field : 字段,相当于是 MySQL 中表格里的 column

index : 索引

primary key :主键(主要作用:数据唯一标识),默认为 _id

安装

配置环境变量

将 MongoDB 安装目录下的 bin 目录路径添加到环境变量的配置中

启动 mongodb 数据库实例

$ mongod --dbpath /d/db/data

/d/db/data 这个目录是放置数据文件的目录,需要先手动创建出来

使用

  • 在命令行下使用 mongo 命令进入数据库

常用命令:

show dbs – 显示所有数据库

db – 当前所在数据库,与 db.getName() 等价

use <db_name> – 切换数据库

db.createCollection(name) – 创建集合

db.getCollection(cname) same as db[‘cname’] or db.cname,根据集合名称获取集合对象,和 db[‘cname’] 或 db.cname 是等价的

db.getCollectionNames() – 获取数据库中所有集合的名称并返回

CRUD ---- C 创建 R 读取 U 更新 D 删除

db..insert() – 创建,添加

db..insertOne()

db..insertMany()

db..find() – 查询

db..update() – 修改

db..updateOne()

db..updateMany()

db..remove()

db..deleteOne()

db..deleteMany()

GUI

robo 3t
mongodb compass

Express

基于 Node.js 平台,快速、开放、极简的 Web 开发框架

使用

安装

$ npm i express -S

RESTful 风格的 API

资源,必须使用名词命名

动词

使用 URL 定位资源,使用 HTTP 动词操纵资源

  • GET – 获取资源
  • POST – 创建资源
  • PUT – 修改资源(完全修改)
  • PATCH – 修改资源(部分修改)
  • DELETE – 删除资源

连接数据库,实现 CRUD

mongoose – 连接 mongodb

sequelize – 连接 mysql、sqlite 关系型数据库

后端实现文件上传业务

multer

formidable

实现文件上传时,前端发送数据的格式需要设置为 multipart/form-data,并且以 POST 请求的方式,提交上传文件

即时通信

https://socket.io/

socket 通信,真正的双向通信方式

http 是基于请求-响应模式的,是单向的数据通信方式

websocket,是web端实现 socket 通信时使用的技术

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值