当前位置: 首页 > news >正文

汽车行业网站建设比较好/技成培训网

汽车行业网站建设比较好,技成培训网,美国做电商网站,软件开发过程的阶段划分前后端同步开发过程中,有时候前端页面完成了,需要等待后端接口完成部署后才能联调。 这个时候如果不想等待,想自己造数据模拟网络请求,这种情况就能用到mock工具了。 mock工具可以用在web网站,也能用在小程序中。先介绍…

  前后端同步开发过程中,有时候前端页面完成了,需要等待后端接口完成部署后才能联调。

这个时候如果不想等待,想自己造数据模拟网络请求,这种情况就能用到mock工具了。

  mock工具可以用在web网站,也能用在小程序中。先介绍下操作步骤(以windows环境为例):

1、cmd打开终端,安装mock插件,全局生效:

npm i @shymean/mock-server -g

2、插件安装完成后,然后在磁盘中随便一个地方新建一个文件夹,命名为mock;

  在mock文件里面新建一个_mock.js空文件;

  在终端进入mock文件夹,输入命令mock, 启动本地mock服务器,默认端口为7654,操作步骤如图:

  

  

3、在_mock.js中写测试列子,开始测试。 

//用户信息
Mock.mock(/userInfo/, {status: 200,data:{userName: "王大锤",userSign: "石破天锤,地动山摇;"}
})//版本信息
Mock.mock(/storeInfo/, { "code": "000000", "data": { "orgXcxType": 3, "topOrgId": 89043, "orgName": "专业版小程序测试89043", "postType": 1, "orgLevel": 1, "orgFullName": "手边加盟店", "userName": "8904300001", "userId": 683, "orgId": 89043, "orgType": 3, "mobilePhone": null, "staffName": "简历", "userType": 2, "staffId": 683 }, "currentTimes": 1532436470527, "msg": "操作成功" })//测试属性值为字符串/数值/布尔类型
Mock.mock(/testOne/, {'list|10':[{     //10表示list数组长度为10,即这个数组有10个元素'id|+1': 3,   //初始值为3,每次加1 'score|1-99.0-2': 0, //产生浮点数,整数部分在1-99之间;小数位数最多保留2位,最少不保留位数'exp|0-10.1': 0, //产生一个浮点数,浮点数小数保留1位'age|18-60': 0,   //产生一个整数,数的值在18-60之间'info|0-5': '大锤,',   //重复"大锤“,重复的次数为0-5次之间'isOK|1': false  //随机生成一个布尔值,值为true和false的概率都是1/2
  }]
});
//测试属性值是对象 Object
Mock.mock(/testTwo/, {'list|10': [{ 'id|+1': 3,'obj|3':{ height: 180, weight: 75, age: 18, sex: '男', grade: 3 }}]
});
//测试属性值为数组 Array
Mock.mock(/testThree/, { 'list|3': [{ 'team|1': [{name:'小明', age:22}, { name: '小红', age: 18}, {name: '小龙', age: 21}],'org|+1': [{ name: '小明', age: 22 }, { name: '小红', age: 18 }, { name: '小龙', age: 21 }],'fac|0-5': [{ name: '小明', age: 22 }, { name: '小红', age: 18 }],'state|2': [{ name: '小明', age: 22 }, { name: '小红', age: 18 }],}]
});
//测试属性值为function和正则RegExp
Mock.mock(/testFour/, {'list|3': [{'name': function(){return parseInt(Math.random()*100)%2 == 0 ? '王大锤' : '罗小虎'},'regOne': /[a-z][A-Z]\d\s\w\W\d{1,5}/,'regTwo': /\d{3}\w{3}\d{2}\?{1,3}/}]
});

 

4、先在小程序中进行测试模拟网络请求:

//测试mocktestMock: function(){var host = 'http://127.0.0.1:7654/'//testOne : 测试数据模板属性值为字符串和数值
      wx.request({url: host + 'testOne',success: function(data){console.log("..testOne...")console.log(data)}})//testTwo: 测试数据模板属性值为对象
    wx.request({url: host + 'testTwo',success: function (data) {console.log("..testTwo...")console.log(data)}})//testThree : 测试数据模板属性值为数组
    wx.request({url: host + 'testThree',success: function (data) {console.log("..testTwo...")console.log(data)}})//testFour : 测试模板数据属性值为function和正则Reg
    wx.request({url: host + 'testFour',success: function (data) {console.log("..testFour...")console.log(data)}})wx.request({url: host + 'userInfo',success: function (data) {console.log("...success...")console.log(data)},fail: function (err) {console.log(".....fail...")console.log(err)},complete: function (data) {console.log("....complte...")console.log(data);}})//第二个请求
    wx.request({url: host + 'storeInfo',success: function (data) {console.log("....success....")console.log(data)},fail: function (err) {console.log(".....fail...")console.log(err)}})},

5、测试结果如图:

 

6、同理在web网页中进行网络请求http://127.0.0.1:7654/+接口名,

  请求也会被mock服务器拦截,从而去_mock.js中查找对应的数据。

//测试mock
    testMock(){var host = 'http://127.0.0.1:7654/'$.ajax(host + 'testOne', {success: function(res){console.log(res)}})$.ajax(host + 'testTwo', {success: function(res){console.log(res)}})$.ajax(host + 'testThree', {success: function(res){console.log(res)}})$.ajax(host + 'testFour', {success: function(res){console.log(res)}})}
View Code

通过浏览器控制我们也能看到请求成功

 

如果想更深入的了解学习mock, 见github官方文档:https://github.com/nuysoft/Mock/wiki

/**数据模板定义规范 DTD
// 属性名   name
// 生成规则 rule
// 属性值   value
'name|rule': value属性名 和 生成规则 之间用竖线 | 分隔。
生成规则 是可选的。
生成规则 有 7 种格式:
'name|min-max': value //通过重复value生成一个字符串,重复次数>=min, <max ;value用来确定类型,字符串表示生成字符串,数值只能表示这个是 数字类型
'name|count': value  //重复value生成一个字符串,重复次数count
'name|min-max.dmin-dmax': value  //生成一个浮点数,整数部分>=min,<max;小数部分保留dmin到dmax位
'name|min-max.dcount': value  //整数部分>=min,<max; 小数部分保留dcount位小数
'name|count.dmin-dmax': value  //多少个数,小数部分最少保留dmin位数,最多保留dmax位数
'name|count.dcount': value    //多少个数,保留dcount位小数
'name|+step': value   //属性值自动加step, 初始值为value生成规则 的 含义 需要依赖 属性值的类型 才能确定。
属性值 中可以含有 @占位符。
属性值 还指定了最终值的初始值和类型。1. 属性值是字符串 String1.1、'name|min-max': string通过重复 string 生成一个字符串,重复次数大于等于 min,小于等于 max。1.2、'name|count': string通过重复 string 生成一个字符串,重复次数等于 count。2. 属性值是数字 Number2.1、'name|+1': number属性值自动加 1,初始值为 number。2.2、'name|min-max': number生成一个大于等于 min、小于等于 max 的整数,属性值 number 只是用来确定类型。2.3、'name|min-max.dmin-dmax': number生成一个浮点数,整数部分大于等于 min、小于等于 max,小数部分保留 dmin 到 dmax 位。3. 属性值是布尔型 Boolean3.1、'name|1': boolean随机生成一个布尔值,值为 true 的概率是 1/2,值为 false 的概率同样是 1/2。3.2、'name|min-max': value随机生成一个布尔值,值为 value 的概率是 min / (min + max),值为 !value 的概率是max / (min + max)。4. 属性值是对象 Object4.1、'name|count': object从属性值 object 中随机选取 count 个属性。4.2、'name|min-max': object从属性值 object 中随机选取 min 到 max 个属性。5. 属性值是数组 Array5.1、'name|1': array从属性值 array 中随机选取 1 个元素,作为最终值。5.2、'name|+1': array从属性值 array 中顺序选取 1 个元素,作为最终值。5.3、'name|min-max': array通过重复属性值 array 生成一个新数组,重复次数大于等于 min,小于等于 max。5.4、'name|count': array通过重复属性值 array 生成一个新数组,重复次数为 count。6. 属性值是函数 Function6.1、'name': function执行函数 function,取其返回值作为最终的属性值,函数的上下文为属性 'name' 所在的对象。7. 属性值是正则表达式 RegExp7.1、'name': regexp根据正则表达式 regexp 反向生成可以匹配它的字符串。用于生成自定义格式的字符串。*/

 

转载于:https://www.cnblogs.com/tandaxia/p/7885957.html

http://www.lbrq.cn/news/936397.html

相关文章:

  • 网站外包 博客/交换友情链接的途径有哪些
  • 营销型企业网站有哪些类型/seo服务
  • 网站分享链接怎么做/发稿软文公司
  • 苏州知名网站制作设计/武汉百度信息流广告
  • 个人网站做推广/seo排名技巧
  • 辽宁建设工程信息网场内业绩/河南seo
  • 简述网站建设及维护全过程/推广运营
  • 网站编程语言/外国搜索引擎登录入口
  • 佛山做外贸网站流程/百度推广售后客服电话
  • 淘宝客wordpress末班/汕头seo优化
  • 做网站源码/汕头seo
  • 做水利网站需要多少钱/互联网宣传推广
  • 什么网站上可以做简历/爱站seo查询软件
  • 苏州网站建设网站/品牌推广渠道
  • 买房子上哪个网站最好/东莞网站优化公司
  • 手机排行榜/seo的优点有哪些
  • 微信小程序设计网站/汕头网站优化
  • 手机端怎么打开响应式的网站/码迷seo
  • 网站建设 关于我们/kol推广
  • 做网站主要来源/促销活动推广语言
  • 网站建设的基本规范有什么/网站建设公司苏州
  • 无锡网络公司网站建设/体球网足球世界杯
  • 民宿网站开发方案/网络seo啥意思
  • 高端视觉网站/怎样做品牌推广
  • seo网站优化报价/网站域名备案查询
  • 网站 刷流量/360收录提交入口网址
  • 播放视频网站怎么做/电脑清理优化大师
  • 做一元购网站会被封吗/网络平台怎么推广
  • 潜江资讯网二手房出售/优化方案官方网站
  • 网站后台程序怎么做/seo工具查询
  • MQTT之“SUBSCRIBE报文和SUBACK报文”
  • MySQL 8.4 Windows 版安装记录与步骤参考
  • Java面试全攻略:Spring生态与微服务架构实战
  • 《C++ list 完全指南:list的模拟实现》
  • 基于开源AI智能名片链动2+1模式S2B2C商城小程序的人格品牌化实现路径研究
  • 云计算技术之docker build构建错误