天天看點

關于使用 koa路由與mysql子產品, ctx.body擷取不到值的問題

var Koa = require(‘koa’);
var Router = require(‘koa-router’ );
var bodyParser = require(‘koa-bodyparser’);
var mysql = require(‘mysql’);
var app = new Koa();
var router = new Router();
app.use(bodyParser());
var connection = mysql.createConnection({
host : ‘localhost’,
port:3306,
user : ‘root’,
password : ‘xxx’,
database : ‘url’
});
connection.connect();
//第一類封裝 ,一般用于不傳遞多個參數
const query = function (sql) {
return new Promise((resolve, reject) => {
connection.query(sql, function (error, results) {
if(error){
reject(error);
}else{
resolve(results)
}
});
})
}
//第二類封裝 ,一般用于傳遞多個參數
const query1 = function (userStr,name,passwd,token1) {
return new Promise((resolve, reject) => {
connection.query(userStr, function (error, result) {
if(error){
reject(error);
}else{
if (result.length > 0) {
json[‘message’] = ‘使用者已經存在’;
json[‘resultCode’]= 1;
} else {
json[‘message’] = ‘注冊成功’;
json[‘token’] = token1;
json[‘resultCode’] = 200;
var insertStr = insert into login (username, password,token) values ("${name}", "${passwd}","${token1}");
console.log(insertStr)
connection.query(insertStr, function (err, res) {
if (err) throw err;
})
}
resolve(json)
}
});
})
}
// 使用第一類封裝
router.get( ‘/csdnurl’, async(ctx, next) => {
var sql = “select * from csdnurl”;
let results = await query(sql);
ctx.body=results
});           

複制

更多内容請見原文,原文轉載自:https://blog.csdn.net/weixin_44519496/article/details/119816321