使用nodejs快速启动restful接口,模拟接口数据

已被阅读 1048 次 | 文章分类:nodejs | 2021-02-23 23:22

很多前端开发者在前端业务开发过程中,需要获取数据库数据,而这些数据需要后端提供restful接口;我们通常用其他工具 mock数据;但是因为nodejs的崛起,现在的前端开发者都在nodejs环境下开发,所以通过nodejs启动一个restful模拟接口变得相当容易

1 五行代码开启一个接口服务

第一步:安装express包;假设你已经安装了nodejs.你也可以先花1分钟安装后体验

新建文件夹;在文件夹中执行 npm install --save express包;然后新建一个index.js;之后目录如下

/net/upload/image/20210223/dfaa2879-7998-4d5f-93c6-3953b5cb4d31.png

然后在index.js键入如下代码:

                                            
const express = require('express')
const app = express()
app.get("/test/getInfo", function (req, res) {
let data=[{
  name:'zhangsan',
  age:15
},{
  name:'lisi',
  age:17
},{
  name:'wangwu',
  age:25
}]
  res.send(data)
})
// 启动服务器
app.listen(5438, function () {
  console.log("server in http://localhost:5438 ")
})
                                            
                                        

在文件夹根目录下,打开cmd,执行node index.js;开启接口服务

/net/upload/image/20210223/e3a2d766-cea0-4590-bd76-0d99f9f09ef9.png

打开浏览器测试一下;可以看到数据能请求到数据;以后前端开发者可以定义好数据格式,给后端人员按照该格式开发;另一边自己通过本地nodejs服务来写业务功能;等后端技术开发之后替换接口即可

/net/upload/image/20210223/f290dfa8-2653-4841-a9c9-d0fa8aff305e.png

2 全部代码(加入跨域代码)

本地测试,请求本地即接口服务器是不存在跨域问题的;也可以不加跨域部分;跟很多jsva后端开发者合作过程中发现;他们都没有加跨域请求头的习惯,因为都是在本地测试,等前端人员来找,才会加上哈;

                                            
const express = require('express')// 引入express模块 commonjs规范引入
const app = express() // 实例化 express
app.all("*",function(req,res,next){
    //设置允许跨域的域名,*代表允许任意域名跨域
    res.header("Access-Control-Allow-Origin","*");
    //允许的header类型
    res.header("Access-Control-Allow-Headers","content-type");
    //跨域允许的请求方式 
    res.header("Access-Control-Allow-Methods","DELETE,PUT,POST,GET,OPTIONS");
    if (req.method.toLowerCase() == 'options')
        res.send(200);  //让options尝试请求快速结束
    else
        next();
})

app.get("/test/getInfo", function (req, res) {
  let data=[{
    name:'张三',
    age:15
  },{
    name:'李四',
    age:17
  },{
    name:'王五',
    age:25
  }]
  res.send(data)
})
// 启动服务器
app.listen(5438, function () {
  console.log("启动服务 http://localhost:5438 ")
})
                                            
                                        

QQ:3410192267 | 技术支持 微信:popstarqqsmall

Copyright ©2017 xiaobaigis.com . 版权所有 鲁ICP备17027716号