左上角有搜索按钮
右上角有索引的哦~

sesame.mock(url,method,data);

1. 根级属性

只有当data为json对象或数组时,才需要进行解析。
当json对象的第一层具有如下属性时。会做一个特殊处理

$before:function(req){} 当具有$before属性时,在进入解析前,会先进入$before的函数,传入request对象。可以在这里对请求进行处理然后缓存数据。

$response:"file" || "json" || "xml" 表示返回的类型,当为file时,需要额外配置$filePath来指定返回值的路径

$filePath:string || function 表示文件的绝对路径,当为function时,需要返回一个绝对路径

$status:number 表示响应状态码

$delay:number 表示该请求至少多少毫秒后才返回 单位ms

例子:

sesame.rule.js  

let requestData,
requestUrl;
sesame.mock("gofor/getUser",{
    $before : (req)=>{
       requestData = req.body;//如果是get请求参数在req.params里
       requestUrl = req.originalUrl;
    },
    retData:()=>{
        return {
            data:requestData,
            from:requestUrl
        }
    }
})

2. 公共属性

$type:type 表示随机数的类型

$pool:[] 当配置有$pool时,无论$type为何值,总是会优先从pool中选取一个值。如果想选取多个值,请使用array类型

$include:regExp 输出不满足该正则表达式时重新随机。随机超过100次之后会报错。(todo)

$exclude:regExp 输出满足该正则表达式时重新随机。如果同时配置了$include会需要同时满足两者。随机超过100次之后会报错(todo)

$store(todo): 本地的储存空间,该对象不会被解析,在rule中可以通过this.$stroe来存取数据

3. 随机数拓展

如果你想拓展自己的随机数,请看这里 随机数拓展

3.1. boolean

随机生成一个布尔值 true或者false 参数
truePercent:50
@type: number 可以为浮点数
@default: 50.00
@description: 表示随机数中true的概率
@check: truePercent必须在[0,100]区间内,闭区间

demo:
{
    boolean1:{
        $type:"boolean",
        truePercent:0         //必定为false
    },
    boolean2:{
        $type:"boolean",
        truePercent:40.223    //40.223%概率为true
    },
    boolean3:{
        $type:"boolean",
        truePercent:100       //100%为true
    }
}

3.2. number

随机生成一个整数
参数: range:[min,max]
@type:Array
@default:[1,100] @length: 2 数组长度必须为2,否则报错 @description: 表示随机生成整数的范围, @check:1.min必须小于等于max 2.min和max必须为整数

demo:
{
    randomNumber:{
        $type:"number",
        range:[-100,-80]   
    },
    randomNumber2:{
        $type:"number",
        range:[-290,1399]    
    },
    randomNumber3:{
        $type:"number",
        range:[0,0]    
    }
}

3.3. float

随机生成一个浮点数
参数 todo

3.4. time

随机生成一个指定格式的时间,或者时间戳
参数 todo

3.5. array

随机生成一个数组
参数
length:[min,max] || length ,表示数组随机的长度 min可以等于max
@type : Array || Number || String String会转成Number @description:表示随机生成的数组的长度

generator:function(){}
@type:Function 返回一个随机值 @description:数组中的每一个成员都是通过调用该成员产生的

arrayPool:[] @type:Array
@description:如果配置了该项,则generator会失效,数组中的成员会从这个数组中随机选取

poolRepeat: @type:boolean
@default:true 能够重复 @description:表示当arrayPool配置时,选取的元素是否能够重复
@check: 当poolRepeat为false时,arrayPool的长度必须大于length中的最大值

3.6. ip

随机生成一个IPv4地址
参数 range: @type:String 注意IP的range是一个字符串,与其余的range为数组不同
@default:"0-255.0-255.0-255.0-255" @description: 表示随机IP生成的范围,通过.分隔,-表示范围。 @check: 每一位ip都必须在[0,255]区间内,左右端点必须为数字。

demo:
{
    ip1:{
        $type:"ip",
        range:"192.168.1.35-36"
    },
    ip2:{
        $type:"ip",
        range:"192.168.1-12.1-254"
    },
    ip3:{
        $type:"ip3",
        range:"192.0-255.0-255.1-254"
    }
}

3.7. mask

随机生成一个子网掩码
参数 range:[min,max] @type:Array
@default:[1,32]
@description:表示子网掩码的位数 可选值1-32位例如32位掩码即255.255.255.255 @check: min不得大于max,min和max必须大于0小于等于32

demo:
{
    mask1:{
        $type:"mask",
        range:[24,25]
    },
    mask2:{
        $type:"mask",
        range:[26,30]
    }
}

results matching ""

    No results matching ""