将数据库中的页面渲染到网页上
将数据库中的数据渲染到网页上其实十分的简单,首先通过nodejs中的koa模块来建立与服务器的联系.var Koa = require("koa");var app = new Koa();// 设置静态资源目录var koaStatic = require("koa-static");app.use(koaStatic(__dirname + "/ccc"));// 用来获取post请求参数va
·
将数据库中的数据渲染到网页上
其实十分的简单,首先通过nodejs中的koa模块来建立与服务器的联系.
var Koa = require("koa");
var app = new Koa();
// 设置静态资源目录
var koaStatic = require("koa-static");
app.use(koaStatic(__dirname + "/ccc"));
// 用来获取post请求参数
var koaBody = require("koa-body");
app.use(koaBody());
// 跨域设置
app.use(async function (ctx,next) {
ctx.set("Access-Control-Allow-Origin", "*");
ctx.set("Access-Control-Allow-Methods", "PUT, POST, GET, DELETE, OPTIONS");
// 请求头设置
ctx.set(
"Access-Control-Allow-Headers",
`Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild,x-token,sessionToken,token`
);
if (ctx.method == "OPTIONS") {
ctx.body = 200;
} else {
await next();
}
});
// 添加路由
var router = require("./router");
app.use(router.routes());
app.listen(8888, function () {
console.log("服务已启动, 在http://localhost:8888");
});
2.然后通过我们的router路由来创建域名来创建一个全新的页面
代码:
var fs = require("fs");
// 1.导入koa-router
var Router = require("koa-router");
// 2.创建一个router对象
var router = new Router();
//引入数据库模块
var mongodb = require("mongodb");
var client = new mongodb.MongoClient("mongodb://localhost:27017");
var db = client.db("data");
var dblist = db.collection("list");
router.all("/", function (ctx) {
ctx.body = `<h3>用户管理小项目接口列表</h3>
<ul>
<li>
<a target="_self" href="/list">用户列表</a>
</li>
<li>
<a target="_self" href="/detail">用户详情</a>
</li>
<li>
<a target="_self" href="/add">增加用户</a>
</li>
<li>
<a target="_self" href="/edit">修改用户</a>
</li>
</ul>`;
});
var arr = null;
// 列表接口,通过异步的处理,可以让我们拿到数据库中的值
router.all("/list",async function (ctx,res) {
//查询列表
arr=await mconnect('list');
ctx.body = arr;
});
//数据库调用函数,进行了异步处理
function mconnect(operate) {
return new Promise((dui,cuo)=>{
client.connect((err) => {
if (err) {
console.error(err);
cuo(err);
} else {
if (operate === "list") {
dblist.find({}).toArray().then((res) => {
arr = res;
client.close();
dui(arr);
});
}
}
});
})
}
// 导出路由对象
module.exports = router;
更多推荐
已为社区贡献5条内容
所有评论(0)