jquery-mockjax初试
1. 原理
jquery-mockjax是用于mock 前台ajax向后台请求的返回数据。
原理很简单
在你js代码要发送ajax请求的地方断点一下,然后比较在【引入jquery-mockjax】 和 【没有引入jquery-mockjax】的情况下$.ajax.toString()的值情况。
很明显,引入jquery-mockjax时,这个mock库会对jquery提供的ajax函数做替换。这样就很容易能mock起来。
2. 提供的基本特性
1. 根据指定的url模拟基本本的json数据
$.mockjax({
url: '/restful/fortune',
responseTime: 750,
responseText: {
status: 'success',
fortune: 'Are you a turtle?'
}
});
url上可以做很多文章,支持:
url:
'*'
url:
'/data/*'
url: /^/data/(quote|tweet)$/i
2. 可以是返回text,xml
只要给其responseText responseXML设置相应的值即可
xml的例子:
$.mockjax({
url: '/restful/api',
// Need to include the xmlDOM plugin to have this translated into a DOM
responseXML: '<document><quote>Hello world!</quote></document>'
});
3. 可以用proxy指向一个json文件,将json文件中的内容当做json数据mock回去
$.mockjax({
url: '/restful/api',
proxy: '/mocks/data.json'
});
4.response属性可以指向function 以达到mock数据可编程的目的(动态指定)
$.mockjax({
url: '/restful/api',
response: function() {
this.responseText = 'Hello world!';
}
});
5.通过responseTime设置的值mock超时时间
$.mockjax({
url: '/restful/api',
// Simulate a network latency of 750ms
responseTime: 750,
responseText: 'A text response from the server'
});
6.通过status 设置的值mock http状态
$.mockjax({
url: '/restful/api',
// Server 500 error occurred
status: 500,
responseTime: 750,
responseText: 'A text response from the server'
});
7. 通过contentType设置的值mock contentType类型
$.mockjax({
url: '/restful/api',
contentType: 'text/json',
responseText: {
hello: 'World!'
}
});
8.给headers设置一个json对象,mock header信息
$.mockjax({
url: '/restful/api',
contentType: 'text/json',
responseText: {
hello: 'World!'
},
headers: {
etag: 'xyz123'
}
});
ref: http://appendto.com/2010/07/mock-your-ajax-requests-with-mockjax-for-rapid-development/
jquery-mockjax初试的更多相关文章
- 使用 jQuery Mockjax 插件模拟 Ajax 请求
在实际的开发过程中,前端后台协商好了统一的接口,就各自开始自己的任务了.这时候我有这么一个 Ajax 请求需要从后台获取数据: $.ajax({ url: '/products/' }).done(f ...
- jQuery Mockjax插件使用心得
最近指导前端攻城狮在后台代码没有完成前测试自己写的后台代码,第一个版本是让他直接创建一个data.json静态数据,然后再ajax调用,缺点非常明显,首先需要localhost的支持,其次是能测的功能 ...
- jquery.autocomplete 模糊查询 支持分组
//demo <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <lin ...
- 前端mock数据之mockjax和mockjson
用处 在前后台共同进行一个项目的时候常会遇到一种情景, 后台定义好接口,前端按照接口进行开发, 当前端开发完成后台接口却还没有开发完成, 这个时候要进行接口测试, 只能等后台开发完成才能测试, 在这中 ...
- qunit.js初试
看了下mbraak-simple-data-grid写的单元测试,感觉还是很好入手的 用module函数定义模块 用test函数定义测试方法 用equal.ok(判断是否为真)等方法做断言判断 用se ...
- jquery.autocomplete 使用解析
页面引用 <script type="text/javascript" src="${base}/autocom/jquery-1.8.2.min.js" ...
- [转] 前后端分离开发模式的 mock 平台预研
引入 mock(模拟): 是在项目测试中,对项目外部或不容易获取的对象/接口,用一个虚拟的对象/接口来模拟,以便测试. 背景 前后端分离 前后端仅仅通过异步接口(AJAX/JSONP)来编程 前后端都 ...
- 专业上的常用的工具和类库集 By 老衣
Visual Studio 2013 扩展 CodeMaid: 可快速整理代码文件,清理不必要的代码和杂乱的格式.并在开发时实时提供代码复杂度的报告,以便帮助开发人员降低代码复杂度.提高代码质量. C ...
- JS实现-页面数据无限加载
在手机端浏览网页时,经常使用一个功能,当我们浏览京东或者淘宝时,页面滑动到底部,我们看到数据自动加载到列表.之前并不知道这些功能是怎么实现的,于是自己在PC浏览器上模拟实现这样的功能.先看看浏览效果: ...
- ajax开发模拟后端数据接口
在做前端开发的时候,特别是一些业务逻辑集中在前端的开发中.我们经常需要自己来模拟获取到后台接口的数据.为什么要模拟?可能后台接口还没有开发完成,可能后台还没有数据返回,可能...等等原因.曾经,我也尝 ...
随机推荐
- treeview子节点文本过长超过DIV自动换行CSS解决
//文本不换行 .ygtvcell.ygtvcontent{ white-space: nowrap; } //文本超过div出现滚动条 .main .buttom .right{ overflow- ...
- 图文解说:Nginx+tomcat配置集群负载均衡
图文解说:Nginx+tomcat配置集群负载均衡 博客分类: appserver nginxTomcatUbuntuLinux网络应用 作者:niumd Blog:http://ari.iteye ...
- C++ 构造函数放置默认转换explicit关键字(2)
按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示: class String { String ( const char* p ); ...
- PL/SQL Developer 显示中文乱码问题
简单版本: 首先,通过 select userenv('language') from dual; 查询oracle服务器端的编码,如为:AMERICAN_AMERICA.ZHS16GBK; 在我们的 ...
- Shared libraries
Computer Systems A Programmer's Perspective Second Edition Shared libraries are modern innovations t ...
- Eclipse+Qt开发环境设置(Linux和Win)
文章摘要: Windows,Linux平台下安装使用Eclipse + QT4.4.3开发环境 Windows,Linux新建project时的配置(不使用QT预置项目类型,而是手工配置) 使用Ecl ...
- Java调用ASP.NET的webservice故障排除
公司要接入其它公司的一个业务功能,对方是提供的 .net产生的webservice,在用cxf的wsdl2java命令生成客户端的测试代码时,出现了如下故障WSDLToJava Error: Thro ...
- django session
上周一个新的应用场景,带出来了关于django session管理的问题. 公司的另一个App以Widget的形式嵌入我们的页面,就是我们提供一些url,另一个App通过iframe的形式嵌入这些ur ...
- 将Excel导入SQL Server 只能导入数字,其他数据变为NULL怎么解决?
先新建一个TXT文件,把数据粘贴进去 再新建一个Excel文件,在菜单栏中选Data再选From Text 找到txt文件,点import 一定要选Text 点Finish,点OK. 接下来在往数据库 ...
- logstash
logstash作为数据搜集器,主要分为三个部分:input->filter->output 作为pipeline的形式进行处理,支持复杂的操作,如发邮件等 input配置数据的输入和简 ...