通过模块express来写接口
express介绍
案例
解决跨域问题
- 安装cors模块
- 代码中,在所有接口之前,加载cors
使用express 搭建web服务器
const express = require('express');
const app = express();app.get('GET请求的地址', 处理函数);app.post('POST请求的地址', 处理函数);
app.listen(3000, () => console.log('express服务器开始工作了'));
写接口
1.下载安装所需模块 express
2.准备好相应的json文件
3.创建index.js
const express = require('express')
const app = express()
app.listen(3000, () => console.log('启动了'));
使用 nodemon index.js
启动服务
接口案例:
写一个获取市的接口
1.npm i express
2.准备文件:city.json
{"内蒙古自治区": {"呼和浩特市": ["新城区","回民区","玉泉区","赛罕区","土默特左旗","托克托县","和林格尔县","清水河县","武川县"],"包头市": ["东河区","昆都仑区","青山区","石拐区","白云鄂博矿区","九原区","土默特右旗","固阳县","达尔罕茂明安联合旗"],"乌海市": ["海勃湾区","海南区","乌达区"],"赤峰市": ["红山区","元宝山区","松山区","阿鲁科尔沁旗","巴林左旗","巴林右旗","林西县","克什克腾旗","翁牛特旗","喀喇沁旗","宁城县","敖汉旗"],"通辽市": ["科尔沁区","科尔沁左翼中旗","科尔沁左翼后旗","开鲁县","库伦旗","奈曼旗","扎鲁特旗","霍林郭勒市"],"鄂尔多斯市": ["东胜区","康巴什区","达拉特旗","准格尔旗","鄂托克前旗","鄂托克旗","杭锦旗","乌审旗","伊金霍洛旗"],"呼伦贝尔市": ["海拉尔区","扎赉诺尔区","阿荣旗","莫力达瓦达斡尔族自治旗","鄂伦春自治旗","鄂温克族自治旗","陈巴尔虎旗","新巴尔虎左旗","新巴尔虎右旗","满洲里市","牙克石市","扎兰屯市","额尔古纳市","根河市"],"巴彦淖尔市": ["临河区","五原县","磴口县","乌拉特前旗","乌拉特中旗","乌拉特后旗","杭锦后旗"],"乌兰察布市": ["集宁区","卓资县","化德县","商都县","兴和县","凉城县","察哈尔右翼前旗","察哈尔右翼中旗","察哈尔右翼后旗","四子王旗","丰镇市"],"兴安盟": ["乌兰浩特市","阿尔山市","科尔沁右翼前旗","科尔沁右翼中旗","扎赉特旗","突泉县"],"锡林郭勒盟": ["二连浩特市","锡林浩特市","阿巴嘎旗","苏尼特左旗","苏尼特右旗","东乌珠穆沁旗","西乌珠穆沁旗","太仆寺旗","镶黄旗","正镶白旗","正蓝旗","多伦县"],"阿拉善盟": ["阿拉善左旗","阿拉善右旗","额济纳旗"]}},
3.创建index.js
const express = require('express')
const app = express()
let cities = require('./city.json'); app.get('/api/province', (req, res) => {app.get('/api/city', (req, res) => {let pname = req.query.pname; if (pname) { let city = [];for (key in cities[pname]) {city.push(key);}res.send(city);} else {res.send({code: 1, message: 'pname参数必填'})}
});
})app.listen(3000, () => console.log('启动了'))
4.结果