基于koa2框架和mysql数据库的后台接口

    之前一直用php写接口,一个偶然的情况,得知koa框架,然后就像尝试一下写一下一个简单的登录注册的接口。首先如果是不了解koa可以看一下阮一峰的Koa 框架教程。

    首先我用了mysql-pro来连接mysql数据库,接口使用了koa框架,具体代码如下:

const koaBody = require('koa-body');
const Koa = require('koa');
const koaRouter = require('koa-router');
const sql=require('./mysql.js')
const app = new Koa();
const router =new koaRouter();

app.use(router['routes']()).use(router.allowedMethods());//allowedMethods()方法允许post、get等请求,没有用这个方法页面会出现not found
//注册插入数据库路由接口
router.post('/index', koaBody(), async(ctx, next)=> {
	ctx.set("Access-Control-Allow-Origin", "*");
	var sbody=ctx.request.body;//接收页面传过来的值
	var temp=await sql.query("insert into login(usename,password) values(?,?)",[sbody.usename,sbody.password]).then(function(result){
		console.log(result);
		return result;
	},function(error){
		return -1;
	});
	ctx.body=sbody;//传回去页面的值,会在页面中显示。
});
router.post('/login',koaBody(),async(ctx,next)=>{//登录接口
	ctx.set("Access-Control-Allow-Origin","*");
	var loginbody=ctx.request.body;
	var success=false;
	var logintemp=await sql.query("select * from login").then(function(result){
		for(var i=0;iconsole.log('Koa start at 3000...'));
    接口测试用了postman,这个工具使用也介绍一下,下面图中标注的一些地方是要注意的:

    感觉koa框架来写接口还是比较方便的,毕竟有很多插件的支持,连接数据库的插件也有所不同,可能不同数据库插件连接数据库方法也有点不同,然后就是koa框架中的路由我弄了很久,经常出现not found,应该是没有使用router.allowedMethods()这个方法,导致post和get的方法不行。

基于koa2框架和mysql数据库的后台接口_第1张图片

你可能感兴趣的:(mysql,node)