最近研究了一下nodejs写接口,发现接口并不难写,这里总结一下.
所需配置
我用的的是express框架,配合moment(时间格式化)中间件+cors中间件(跨域用)+body-parser(解析表单)+mysql中间件
直接上代码
const express = require ( ' express ' );
const app = express ();
const moment = require ( ' moment ' )
//导入cors模块,该模块为跨域所用
const cors = require ( ' cors ' );
app . use ( cors ());
//解析表单的插件
const bodyParser = require ( ' body-parser ' );
app . use ( bodyParser . urlencoded ({ extended : false }))
//创建数据库连接对象
const mysql = require ( ' mysql ' );
const conn = mysql . createConnection ({
host : ' 127.0.0.1 ' ,//数据库地址
user : ' root ' ,//账号
password : ' root ' ,//密码
database : ' mydb_12_9 ' ,//库名
multipleStatements : true //允许执行多条语句
})
下面是get表中所有数据
app . get ( ' /api/getlist ' , ( req , res ) => {
const sqlStr = ' select * from zdcx '
conn . query ( sqlStr , ( err , results ) => {
if ( err ) return res . json ({ err_code : 1 , message : ' 资料不存在 ' , affextedRows : 0 })
res . json ({ err_code : 200 , message : results , affextedRows : results . affextedRows })
})
})
按条件查询
app . get ( ' /api/getlistdetl ' , ( req , res ) => {
const number = req . query . number
const sqlStr = ' select * from zdcx where number=? '
conn . query ( sqlStr , number , ( err , results ) => {
if ( err ) return res . json ({ err_code : 1 , message : ' 资料不存在 ' , affextedRows : 0 })
res . json ({ err_code : 200 , message : results , affextedRows : results . affextedRows })
})
})
添加数据
//添加
app . post ( ' /api/addcard ' , ( req , res ) => {
const user = req . body
user . ctime = moment (). format ( ' YYYY-MM-DD HH:mm:ss ' )//格式化日期
const sqlStr = ' insert into bank set ? '
conn . query ( sqlStr , user , ( err , results ) => {
if ( err ) return res . json ({ err_code : 1 , message : err , affectedRows : 0 })
res . json ({ err_code : 0 , message : ' 恭喜成功 ' , affectedRows : results . affectedRows })
})
})
端口监听
app . listen ( 3000 , () => {
console . log ( ' 正在监听端口3000,http://192.168.1.114:3000 ' ); //192.168.1.114换成你的ip,本机ip查询用cmd=>ipconfig
})
运行就直接node 你的文件名 就行了
记得安装依赖!!!!!!
记得安装依赖!!!!!!
记得安装依赖!!!!!!建议配合phpstudy使用
链接: https://pan.baidu.com/s/1ykLIWKWSmf3M9ZCk2sMzUg 密码: wjzi
版权声明:本文为weixin_42193625原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。