新建一个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 = handleRequestserver.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下载以及使用方法 运行结果: