【Api】easy-mock在线api

解决ios

在使用easy-mock模拟post提交数据的状况中,咱们有时须要对提交的数据进行简单逻辑处理。
查阅文档发现能够使用"_req.body.keyname"来获取相应的值,可是在对演示项目进行预览操做时发现,容易出现undefined或Bad Request值。git

文档中提到“当 post 请求以 x-www-form-urlencoded 方式提交时,咱们能够拿到请求的参数对象”,通过屡次尝试发现按照参考文档,在header中配置content-type项,目前没法正常操做。github

 ①接口配置->更新npm

{
  code: function({
    _req
  }) {
    if (_req.body.userName === 'admin' && _req.body.password === '123456') {
      return 200
    } else {
      return 500
    }
  },
  data: function({
    _req
  }) {
    if (_req.body.userName === 'admin' && _req.body.password === '123456') {
      return {
        name: "admin",
        access: ["admin"],
        user_id: "2",
        token: "admin",
        avatar: "https: //avatars0.githubusercontent.com/u/20942571?s=460&v=4"
      }
    } else {
      return "登陆帐号不对" + _req.body.userName
    }
  }
}
View Code

②请求接口->post参数请求axios

{
"userName":"admin",
"password":"123456"
}
View Code

③iView-admin中axios设置post参数为@ResponseBody(从请求体中取参数)segmentfault

解决以下:src->libs->axios.js中 引入qs (使用qs 库对数据进行转换)api

.
.
// 引入qs,若无,先npm install qs
import qs from 'qs'
.
.
// 修改request函数
request (options) {
  .
  .
  if(options.data) options.data=qs.stringify(options.data)
  .
  .
}
View Code

这样,请求体以Form Data形式post提交ide

备注: easy-mock上登陆请求api最好不以login命名,没法返回data。(暂时不知原因)函数

相关文章
相关标签/搜索