如何开发一个接口以及路由的编写
新建一个server.js文件,首先,需要引入http模块和url模块;通过http.createServer()来创建服务;通过pathname判断请求的地址:
const http = require('http');
const url = require('url');
const server = http.createServer((req,res) => {
res.writeHead(200,{'content-type':'application/json;charset=UTF-8'})
//获取URL对象
let urlObj = url.parse(req.url,true);
console.log(urlObj)
if (urlObj.pathname === '/api/getMsg' && req.method === 'GET'){
res.end('获取成功')
}else{
res.end('404 not found')
}
})
server.listen(3000,() =>{
console.log('监听3000端口')
})
打开浏览器,在浏览器的地址栏里输入:http://localhost:3000/api/getMsg?name=xt&sex=female
刷新页面结果:
打开浏览器,在浏览器的地址栏里输入:http://localhost:3000/api/getMsg1?name=xt&sex=female
刷新页面结果:
如果有多个路由的话,代码就会比较多,所以我们把路由的判断放在另一个js文件里来写。
新建一个文件夹router,里面新建一个文件 index.js,内容为:
const url = require('url');
function handleRequest(req,res){
//获取url对象
let urlObj = url.parse(req.url,true);
console.log(urlObj)
if(urlObj.pathname === '/api/getMsg' && req.method === 'GET'){
return{
msg:'获取成功'
}
}
if(urlObj.pathname === '/api/UpdateData' && req.method === 'POST'){
return{
msg:'更新成功'
}
}
}
module.exports = handleRequest
server.js文件里的代码:
const http = require('http');
const url = require('url');
const routerModal = require('./router/index');
const server = http.createServer((req,res) => {
res.writeHead(200,{'content-type':'application/json;charset=UTF-8'})
let resultData = routerModal(req,res)
if(resultData){
res.end(JSON.stringify(resultData))
}else{
res.end('404 not found')
}
})
server.listen(3000,() =>{
console.log('监听3000端口')
})
打开浏览器,在浏览器的地址栏里输入:http://localhost:3000/api/getMsg?name=xt&sex=female
刷新页面结果:
在postman里面测试一下post请求:
附:postman下载以及使用方法
运行结果: