通过模块express来写接口

express介绍

案例

解决跨域问题

  • 安装cors模块
  • 代码中,在所有接口之前,加载cors

使用express 搭建web服务器


// 1) 加载 express 模块
const express = require('express');// 2) 创建 express 服务器
const app = express();// 3) 监听浏览器请求并进行处理app.get('GET请求的地址', 处理函数);app.post('POST请求的地址', 处理函数);// 4) 开启服务器
app.listen(3000, () => console.log('express服务器开始工作了'));

写接口

1.下载安装所需模块 express
2.准备好相应的json文件
3.创建index.js

// 用于启动服务,并且写接口
const express = require('express')
const app = express()// 写接口
// app.请求方式('接口地址', '带有req、res参数的处理函数');
// app.get('/api/student', (req, res) => {});
// app.post();
// app.delete();
// app.put();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; // 这行代码的意思是获取 url后拼接的 查询参数if (pname) { // 判断,如果能够取得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.结果

Node-express写接口的详细步骤相关推荐

  1. Node.js—Express、Express 路由 、Express 中间件、使用 Express 写接口

    目标: 能够使用 express.static() 快速托管静态资源 能够使用 express 路由精简项目结构 能够使用常见的 express 中间件 能够使用 express 创建API接口 能够 ...

  2. Node 学习 | Day03 express (初识Express、Express 路由、Express 中间件、使用 Express 写接口)

    Express 初识Express 1.1 Express 简介 1.1.1 什么是 express 1.1.2 进一步理解 Express 1.1.3 Express可以做什么 1.2 Expres ...

  3. Express做后端服务详细步骤,从零到一

    文章目录 一.全局安装脚手架 二.生成项目 1.生成项目 2.目录结构介绍 3.拓展:配置文件热更新(避免改一次文件重启一次服务) 步骤1:安装nodemon 步骤2:创建nodemon.json文件 ...

  4. 如何用express写接口

    什么是experss ? express是一个基于node.js平台,极简高效开发的web开发框架 对于nodejs来说,express是一个第三方模块,支持丰富的api,强大而灵活的中间件特性 第一 ...

  5. node.js的下载安装详细步骤(还有安装配套的express、淘宝镜像、webpack、Vue)

    目录 一.概述 二.操作步骤 (一)下载node.js (二) 安装node.js (三)查看环境变量 (四)查看版本信息 (五)新建全局下载包和缓存包位置 (六)配置环境变量 (七)安装expres ...

  6. 【node】使用Express写接口

    一.创建基本的服务器 //导入express模块 const express = require('express') //创建express的服务器实例 const app = express() ...

  7. express 写接口

    实例下载:百度云盘免密码 (): 指注释 一.准备工作 1.安装express npm install express -g npm install express-generator -g 2.初始 ...

  8. express项目搭建 初始化详细步骤

    案例 一.对每一个POST请求都设置CSRF防护 实际上,不仅仅转账需要CSRF防护,每一个post请求都需要做csrf的防护措施. webA项目中的app.js: const router = ex ...

  9. 接口开发详细步骤总结

    概述: 总结了一下开发接口的一个思路.我们系统的基础数据,需要提供给第三方的软件做基础数据,需要提供接口以便别人能够取到数据. 整体思路: 前期需求调研,明确出要做哪些内容. 整理需求文档 评审:大家 ...

最新文章

  1. 学习Mybatis与mysql数据库的示例笔记
  2. vue+ivew-admin开发项目,内存占用过大解决办法
  3. 生成式AI,引领AI从“换脸”到“造脸”
  4. Java多线程:synchronized关键字和Lock
  5. 关于iOS7以后版本号企业公布问题
  6. is属性用法 vue_vue组件讲解(is属性的用法)模板标签替换操作
  7. Ubuntu下svn 版本管理客户端工具及常用方法
  8. linux编译有趣c程序,12个有趣的C语言问答(详解)
  9. 【java学习之路】(javaWeb篇)006.构造函数、JQuery函数库
  10. [luogu3369]普通平衡树(替罪羊树模板)
  11. Symantec清除工具 CleanWipe_14.3.558.1000
  12. 超级实用的浏览器插件
  13. Android SDK是什么
  14. 手把手教你做个AR涂涂乐
  15. 猫狗二分类实战(PyTorch)
  16. 英文词典中的那些词性缩写字母的原型
  17. 50条经典(学生,课程,成绩,教师)表SQL语句~~值得一看!
  18. 团队项目开发流程总结
  19. 页面的版心html,关于PC端网页版心及网页自适应问题
  20. 没想到系列之YOLOv4:Optimal Speed and Accuracy of Object Detection

热门文章

  1. 二层改三层如何改数据集控件
  2. POJ--1300--Door Man【推断无向图欧拉通路】
  3. Android -- 启动Service并传递数据
  4. Perl 学习笔记-目标操作
  5. ORA-00257: archiver error. Connect internal only, until freed——解决
  6. 如何查看Windows7系统版本
  7. 《程序设计技术》第三章例程
  8. CCF201403-2 窗口(100分)
  9. Effective Java(二)—— 循环与 StringBuilder
  10. 经典卷积神经网络的学习(一)—— AlexNet