用node.js写接口

项目整体流程:


①建数据库、建表 

②初始化服务端项目结构 

porject

 npm init -y npm i express 

③先启动一个web服务器


app.js

const express = require('express')
 const router = require ('./router')
 //在Express 获取表单 POST 请求体数据 npm install --save body-parser
 const bodyParser = require('body-parser')
 const app = express()
 // 把路由应用到 app 中
 app.use(bodyParser.urlencoded({ extended:false }))
 app.use(bodyParser.json())
 app.use(router)
 app.listen(3000,()=>{
 console.log('App is running at port 3000.')
 console.log('Please visit http://127.0.0.1:3000/')
 })


router.js

const express = require('express')
 const router = express.Router()
 const userContoller = require('./controllers/user')
 router
     .get('/users',userContoller.query)
     .post('/users',userContoller.new)
     .patch('/users/id',userContoller.update)
     .delete('/users/id',userContoller.delete)


user.js

const moment = require('moment') //最强大js时间处理函数包 npm i moment
 const md5 = require('blueimp-md5') //md5加密算法 首先 在控制台 npm i blueimp-md5

 exports.query = (req, res, next) =>{ }
 exports.new = (req, res, next) =>{
 const body = req.body
 // 将新建用户信息插入到users表 mysql设置默认值让创建时间等于系统时间(百度)
 const sqlStr =
         `INSERT INTO 'users'(username, password, email, avater, gender , nickname,         create_time, modify_time)
         VALUES( '${body.username}',
                         'md5( md5( ${body.password} ) )',
                         'default-avatar.png',
                         '${moment().format('YYYY-MM-DD hh:mm:ss')}', //利用moment获取当前时间                         '${moment().format('YYYY-MM-DD hh:mm:ss')}', //利用moment获取当前时间          ) `
 // 连接数据库 去npmjs.com 搜mysql 连接代码

 }

 exports.update = (req, res, next) =>{

 }

 exports.delete = (req, res, next) =>{

 }



④设计接口(数据接口路由)

4.1  RESTful ( 接口设计规范 )   

  http://www.ruanyifeng.com/blog/2014/05/restful_api.html

4.1.1 获取所有用户      /users get 返回整个数组

4.1.2 添加用户 /users      post提交 请求体:{username:    , password: , email:} 返回整个数组

4.1.3 修改用户 /users/id  patch      返回整个数组

4.1.4 删除用户 /users/id delete    返回空数组

用户登录成功以后记录session 

A. npm  i  express-session    去百度搜它的配置使用  在app.js进行配置

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容