使用MockJS模拟数据,如何获取入参?

场景描述

在使用MockJS进行模拟数据的时候,会遇到一种场景,当参数=1时,展示A类数据,当参数=B时,展示B类数据,为了实现这场景,那就要在模拟数据时拿到请求参数?

实现逻辑

mock方法的编写如下:

ts 复制代码
export default [
  {
    url: '/xxxxx/get',
    method: 'post',
    timeout,
    response: (e) => {
      if(e.body && e.boby.type == 1){
        return A结果
      }
      if(e.body && e.boby.type == 2){
        return B结果
      }
      return null
    }
  }
] as MockMethod[]

responsee参数,字段如下,可以看见boby内有请求头信息,如此,我们可以根据这个boby进行判断,来模拟不同的结果,这样就会使得模拟的数据连贯。

完整的response数据如下:

json 复制代码
{
    "url": "/xxxxx/get",
    "body": {
        "type": 1
    },
    "query": {},
    "headers": {
        "host": "localhost:4000",
        "connection": "keep-alive",
        "content-length": "68",
        "pragma": "no-cache",
        "cache-control": "no-cache",
        "sec-ch-ua": "\"Google Chrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"",
        "accept": "application/json, text/plain, */*",
        "content-type": "application/json",
        "sec-ch-ua-mobile": "?0",
        "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36",
        "sec-ch-ua-platform": "\"Windows\"",
        "origin": "http://localhost:4000",
        "sec-fetch-site": "same-origin",
        "sec-fetch-mode": "cors",
        "sec-fetch-dest": "empty",
        "referer": "http://localhost:4000/",
        "accept-encoding": "gzip, deflate, br",
        "accept-language": "zh-CN,zh;q=0.9"
    }
}

上面是post请求数据存储在body内,如果是get请求,参数会在query内进行展示。

相关推荐
半生过往9 分钟前
前端工程师学习智能体开发(一)
前端·学习·状态模式
白雾茫茫丶15 分钟前
Vibecoding 一个主题切换动画库:13 种揭幕方式
前端·vue.js·react.js
计算机魔术师25 分钟前
谷歌宣布 TPU 互联架构支持 100 万芯片规模,电力供应成 AI 基建核心瓶颈
前端
雪芽蓝域zzs30 分钟前
第四十九节:TagsView 右键菜单(带三角箭头)给每个 tag 增加**鼠标右键菜单**(右键标签弹出:关闭、关闭其他、关闭全部)
前端·javascript·vue.js
এ慕ོ冬℘゜43 分钟前
从零开发移动端医院挂号页面:适配、交互与前端实现详解
前端·javascript
ynchyong1 小时前
TS 基础
typescript·ts
西瓜太郎4991 小时前
别再手算 Token 成本:用 React 状态机做一个可追溯的模型费用计算器
react.js·typescript
掘金挖土1 小时前
前端手摸手跑路之 AI 应用开发(六)
前端·后端
liuyt20221 小时前
【javaweb】day4
前端
志尊宝2 小时前
Vue3 零基础每日笔记(024):组件的创建与使用——从 import 到自动导入
前端·vue.js·笔记·前端框架·html5