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(接口定义文档)实现,先来看一下接口定义文档中的“猜你喜欢接口” 定义,如下图所示。
查看了接口定义文档的介绍,再来看示例 1,就很容易理解模拟的接口了。
标签:5.1,string,文件,dd,接口,datetime,yyyy,api,mock 来源: https://www.cnblogs.com/Huang-zihan/p/16389260.html