抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

Mr.wang

Time flies and people come and go

记录 node 开发中好用的方法和技巧

node 的跨域解决

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
app.all("*", function (req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header(
"Access-Control-Allow-Headers",
"Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild"
);
res.header("Access-Control-Allow-Methods", "PUT, POST, GET, DELETE, OPTIONS");

if (req.method == "OPTIONS") {
res.send(200);
/让options请求快速返回/;
} else {
next();
}
});

获取本地 IP

1
2
3
4
5
6
7
8
9
10
11
12
function getIPAdress() {
var interfaces = require("os").networkInterfaces();
for (var devName in interfaces) {
var iface = interfaces[devName];
for (var i = 0; i < iface.length; i++) {
var alias = iface[i];
if (alias.family === "IPv4" && alias.address !== "127.0.0.1" && !alias.internal) {
return alias.address;
}
}
}
}

自动导入 API

基于 koa and koa-router 使用场景

1
2
3
4
5
6
7
8
9
const Router = require("Koa-router");
const requireDirectory = require("require-directory");
requireDirectory(modele, "./api", {
visit: (obj) => {
if (obj instanceof Router) {
app.use(obj.routes());
}
}
});

Node 环境变量

1
process.cwd(); //当前项目的绝对路径

评论