node.js后端开发个人学习笔记

  1. mime第三方模块: 根据当前的请求路径,分析资源的类型, 然后把类型返回.
    mime.getType(realPath);

2.promise:::
const fs = require(‘fs’)

let promise = new Promise((resolve, reject) => {
fs.readFile(’./100.txt’, ‘utf8’, (error, result) => {
// 如果成功了,调用resolve把结果返回给promise外面
// 如果失败了,调用reject把错误返回给promise外面
if (error != null) {
reject(error)
} else {
resolve(result)
}
})
});

// 当异步api执行成功的时候调用resolve , 调用resolve实际上就是在调用then里面的回调函数
promise.then(result => {
console.log(result);
}).catch(error => {
console.log(error);

})

promise解决回调地狱问题

const fs = require(‘fs’)

function f1() {
let promise = new Promise((resolve, reject) => {
fs.readFile(’./1.txt’, ‘utf8’, (error, result) => {
resolve(result)
})
})
return promise;
}

function f2() {
let promise = new Promise((resolve, reject) => {
fs.readFile(’./2.txt’, ‘utf8’, (error, result) => {
resolve(result)
})
})
return promise;
}

function f3() {
let promise = new Promise((resolve, reject) => {
fs.readFile(’./3.txt’, ‘utf8’, (error, result) => {
resolve(result)
})
})
return promise;
}

f1().then(result => {
console.log(result);
return f2()
}).then(result => {
console.log(result);
return f3();
}).then(result => {
console.log(result);

})

3.普通函数定义前加async就变成了异步函数, 异步函数返回promise对象
await只能出现在异步函数中 await后面要跟promise对象,用于暂停异步函数向下执行,知道promise返回结果

4.node中所有对数据库的操作都是异步操作

MongoDB数据库导入数据:
mongoimport -d 数据库名称 -c 集合名称 --file 要导入的数据所在文件路径

向模板中导入变量 : template.defaults.imports.变量名 = 变量值
设置模板跟目录:template.defaults.root =
配置模板默认后缀:template.defaults.extname =

serve-static第三方模块,实现静态资源访问服务

// 告诉express框架使用什么模板引擎渲染什么后缀的模板文件
app.engine(‘art’, require(‘express-art-template’))

// 告诉express框架模板存放的位置
app.set(‘views’, path.join(__dirname, ‘views’))

// 告诉express框架模板的后缀
app.set(‘view engine’, ‘art’)

req.send()方法默认是设置200状态码

你可能感兴趣的:(node.js后端开发个人学习笔记)