文件目录
koa
node_modules
static
index.html
url
getList.js
login.js
package-lock.js
server.js
server.js内容
const Koa = require('koa');
const app = new Koa();
const bodyParser = require('koa-bodyparser')
app.use(bodyParser())
const router = require('koa-router')();
app.use(router.routes());
const static = require('koa-static')
app.use(static('./static'));
const login = require('./url/login.js');
router.post('/login', login);
const getList = require('./url/getList.js');
router.get('/getList', getList);
app.listen(3000,()=>{
console.log('success');
});
static→index.html内容
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<h1>hello-Koa</h1>
</body>
<script type="text/javascript">
function ajaxPost(url,json,cb){
var xhr = new XMLHttpRequest();
xhr.open('post',url);
xhr.setRequestHeader("content-type","application/json");
xhr.send(JSON.stringify(json));
xhr.onload = function(){
cb(JSON.parse(xhr.responseText));
}
}
ajaxPost('http://localhost:3000/login',{name:'风舞红枫'},function(result){
console.log(result)
})
function ajaxGet(url,cb){
var xhr = new XMLHttpRequest();
xhr.open('get',url);
xhr.send();
xhr.onload = function(){
cb(JSON.parse(xhr.responseText));
}
}
ajaxGet('http://localhost:3000/getList?page=1',function(result){
console.log(result)
})
</script>
</html>
url→login.js内容
var login = async (ctx, next) => {
ctx.response.body = {
name:ctx.request.body.name
};
};
module.exports = login;
url→getList.js内容
var getList = async (ctx, next) => {
ctx.response.body = {
name:ctx.request.query.page
};
};
module.exports = getList;