其他分享
首页 > 其他分享> > 5.1.2 写 mock 文件

5.1.2 写 mock 文件

作者:互联网

mock 文件支持两种请求:

  • get/api/xxx
  • post/api/<id>/123

<id>代表链接路由表达式,如/api/:id/123,id 值会发生改变。具体的文件结构如下所示。

mock
|--get
   |--api_xxx.js
   post
   |--api_@id_xxx.js

以大觅项目中的“猜你喜欢接口”api_list_guesslike.js 为例,此接口的命名:api 代表接口,list 代表所属页面,这里是指列表页面,最后的 guesslike 代表接口名称为“猜你喜欢接口”。具体代码如示例
1 所示 。

示例1

// 猜你喜欢接口
module.exports = function (param) {
    let paid = parseInt(param.body.itemTypeId);
    if(paid == 0) {
        return {
            "success": "string",
            "errorCode": "string",
            "msg": "",
            "data|1-4": [
                {
                    "id": '@string("number",2)',
                    "itemName": '@csentence(5)',
                    "imgUrl": 'https//pimg.dmcdn.cn/perform/project/1381/138121_n.jpg',
                    "areaId": '@string("number",3)',
                    "areaName": '@province',
                    "address": '@county(true)',
                    "startDate": '@datetime("yyyy-MM-dd")',
                    "endDate": '@datetime("yyyy-MM-dd")',
                    "minPrice": '@integer(60, 100)'
                }
            ]
        }
    }   else if(paid == 1) {
        return {
            "success": "string",
            "errorCode": "string",
            "msg": "",
            "data|1-4": [
                {
                    "id": '@string("number",2)',
                    "itemName": '@csentence(10)',
                    "imgUrl": 'https//pimg.dmcdn.cn/perform/project/1381/138121_n.jpg',
                    "areaId": '@string("number",3)',
                    "areaName": '@province',
                    "address": '@county(true)',
                    "startDate": '@datetime("yyyy-MM-dd")',
                    "endDate": '@datetime("yyyy-MM-dd")',
                    "minPrice": '@integer(60, 100)'
                }
            ]
        }
    }else {
        return {
            "success": "string",
            "errorCode": "string",
            "msg": "",
            "data": {
                "currentPage": param,
                "pageCount": 1,
                "pageSize": 10,
                "total": 6
            }
        }
    }
}

此接口的模拟要根据项目前期由前后端人员共同协商出的 API-Schema(接口定义文档)实现,先来看一下接口定义文档中的“猜你喜欢接口” 定义,如下图所示。

image

查看了接口定义文档的介绍,再来看示例 1,就很容易理解模拟的接口了。

标签:5.1,string,文件,dd,接口,datetime,yyyy,api,mock
来源: https://www.cnblogs.com/Huang-zihan/p/16389260.html