在上文设置了experss反对es6之后,就能够把vue代码里的axios搬过去了。
这一步只新增一个qs包 npm install qs
在src文件夹下新建一个libs文件,把api.request.js
和axios.js
文件搬过去,批改一下import的门路:
import HttpRequest from './axios'import config from '../config'
axios.js中的store不会用到,删除之,addErrorLog办法也删除掉。
新建一个config文件夹,用来放配置文件。server/node_api/src/config/index.js
export default { baseUrl: { dev: 'http://www.xxxx/', // 测试服务器 prod: 'http://www.xxxx/' // 正式服务器 },}
新建一个api文件夹,用来放api,server/node_api/src/api/users.js
import express from 'express'import axios from '../libs/api.request'import qs from 'qs'/** * 登陆 */export const login = (data) => { return axios.request({ url: 'hdapi/admin/login', method: 'post', data: qs.stringify(data) })}/** * 登陆 */export const getUserInfo = (query) => { return axios.request({ url: 'hdapi/admin/queryUserByToken', method: 'get', params: query })}
当初开始用usersRouter了。编辑server/node_api/src/app.js
新增
import usersRouter from './routes/users'...app.use('/users', usersRouter)
编辑server/node_api/src/routes/users.js
,把controller操作写在这外面
import express from 'express'import { login, getUserInfo } from '../api/users'var router = express.Router()router.post('/login', (req, res, next) => { login({user_name: 'admin', user_pwd: '666'}).then(result => { const {result: { data: { data: {user, token }}}} = {result} console.log('token',token) res.send({ token, user }) })})export default router
后续还能够做的
- 后盾做谬误页面跳转
- 减少分流机制