在做前端开发的时候,特别是一些业务逻辑集中在前端的开发中。我们经常需要自己来模拟获取到后台接口的数据。为什么要模拟?可能后台接口还没有开发完成,可能后台还没有数据返回,可能。。。等等原因。曾经,我也尝试过自己使用nodejs来自己写需要模拟后台接口,但因为种种原因,最后都不了了之,或许是因为太复杂,在开发的时候显得不够人性化。偶然之间,一个转身,我发现了mockjax和mockJSON。

mockjax和mockjson

mockjax主要是可以针对指定的网址进行mock,当Ajax请求网址时进行拦截并回传假的数据。OK,我要的就是这种功能!

mockJSON则有点像是JSON的数据自动生成中心,可以根据我们指定的格式随机生成回传的JSON数据,在需要大量数据时比较有用。

贴上这俩在github的地址,有兴趣的自行围观!

mockjax

mockjson

另外,这两个都是基于jquery开发的插件,所以针对jquery开发流派还是比较有用!

示例

首先,当然还是引入。

<script src="vendor/jquery.1.11.1.js"></script>
<script src="vendor/jquery.mockjax.js"></script>
<script src="vendor/jquery.mockjson.js"></script>

然后我们写一个ajax请求

$(function() {
$.ajax({
url: '/WebApi/test.html',
type: 'GET',
error: function(xhr) {
alert('请求失败');
},
success: function(res) {
alert(res);
}
});
});

由于url不存在,请求失败。然后我们来使用mockjax!

var isAjaxMocked = true;
if (isAjaxMocked) {
$.mockjax({
url: '/WebApi/test.html',
status: 200,
responseTime: 900,
responseText: {'info': 'hello world', 'status': 'success'}
});
}

ok,mock ajax请求成功。而且我们通过设置开关,可以很轻易的在模拟和真实的之间切换。

当需要批量模拟数据时,我们可以使用mockJSON,在这里我就不详细介绍了。

ajax开发模拟后端数据接口的更多相关文章

  1. App开发:模拟服务器数据接口 - MockApi

    为了方便app开发过程中,不受服务器接口的限制,便于客户端功能的快速测试,可以在客户端实现一个模拟服务器数据接口的MockApi模块.本篇文章就尝试为使用gradle的android项目设计实现Moc ...

  2. Charles——前端必备模拟后端数据

    Charles--前端必备模拟后端数据 现在都是前后端分离开发了,前端开发者经常会遇到一个问题如何模拟后端数据来进行开发调试,在这里给大家介绍一个前端神器--Charles. 安装 安装就不赘述了,直 ...

  3. Mock模拟后台数据接口--再也不用等后端的API啦

    ok,在开发中经常需要从后台获取数据,那么有时候后台的数据接口并没有写好,所以这时候,就需要自己模拟数据接口,来实现前端逻辑, 今天数的就是阿里巴巴的一款mock产品,很好用的哦!!!! ok!这是我 ...

  4. vue+vuecli+webpack中使用mockjs模拟后端数据

    前言 使用mockjs可以事先模拟数据,前提是和后端约定好了数据接口,怎样的数据.使用mock就可以生成你要的数据了,从而实现开发时前后端分离. 其主要功能是: 基于数据模板生成模拟数据. 基于HTM ...

  5. vue -webpack.dev.config.js模拟后台数据接口

    在const portfinder = require('portfinder')后面添加 const express = require('express') const app = express ...

  6. 使用RAP2模拟假数据实现前后端分离

    一.为什么使用RAP2 在一个项目的开发中,在页面需要使用大量数据进行渲染生成前,后端开发人员的接口可能还没有写完, 当前端没有后端数据支持的情况下,我们使用mock.js(mock.js用于生成随机 ...

  7. 循序渐进BootstrapVue,开发公司门户网站(5)--- 使用实际数据接口代替本地Mock数据

    在我们开发一些门户网站功能的时候,有时候我们需要快速的创建数据模型来进行数据展示,因为数据结构可能处于不断的修正变化之中,因此服务端的接口我们可以暂时不开发,当我们基本完成数据结构和界面展示的时候,就 ...

  8. 如何在vue-cli项目中结合mockjs模拟假数据

    1.前言 在如今前后端分离的开发方式已被广泛采用的今天,前端同学和后端同学各自独立开发,后端提供数据接口,前端调用接口获取数据渲染页面.但是在实际开发中,后端开发由于逻辑相对复杂接口迟迟提供不到位,而 ...

  9. vue-cli模拟后台数据交互

    作为一个前端入坑的妹子,在学习vue的道路上挣扎徘徊,由一开始的对vue一直蒙圈只知道双向数据绑定和一些'V-x'的指令,慢慢通过一个视频的学习渐渐入坑,对于我这个js基础不怎么好而且编程思维又不是很 ...

随机推荐

  1. mysql删除重复记录语句,删除除了 id 号不同,其他都相同的学生冗余信息

    /** 在Mysql下执行: delete from my.stu where id not in( select min(id) id from my.stu group by code) ; 用途 ...

  2. c++未指定返回值

    int foo() { } foo返回的是随机数 函数的返回值在函数堆栈的参数后面,由一个指向寄存器的指针决定,函数返回时,调用者取指针取寄存器中的值作为返回值. 如果指定返回值,函数在返回前会将返回 ...

  3. hibernate中session,HQL,持久化,一对多,多对一

    package com.hanqi.test; import java.util.Date; import java.util.List; import org.hibernate.Query; im ...

  4. Bootstrap栅格系统(布局)

    栅格系统(布局) Bootstrap内置了一套响应式.移动设备优先的流式栅格系统,随着屏幕设备或视口(viewport)尺寸的增加,系统会自动分为最多12列. 我在这里是把Bootstrap中的栅格系 ...

  5. Swift3.0语法变化

    写在前面 首先和大家分享一下学习新语法的技巧:用Xcode8打开自己的Swift2.3的项目,选择Edit->Convert->To Current Swift Syntax- 让Xcod ...

  6. CODE:BLOCK中的CreateProcess: No such file or directory

    现象: WINDOWS安装MINGW4.8.1,环境变量设置后,命令行窗体G++能够执行.但编译文件时提示: CreateProcess: No such file or directory. 安装C ...

  7. Demo Swig

    演示使用swig工具创建c语言的java接口,生成.so库和java接口文件. 在此之前先要安装swig,安装方法:sudo apt-get install swig 1.使用eclipse创建工程. ...

  8. Ruby on Rails Tutorial 第四章 Rails背后的Ruby 之 其他数据类型(二)

    1.方法 定义如下所示: def string_message(str='') if str.empty? "It's an empty string!" else "T ...

  9. LeetCode: Populating Next Right Pointer in Each Node

    LeetCode: Populating Next Right Pointer in Each Node Given a binary tree struct TreeLinkNode { TreeL ...

  10. PHP下获取上个月、下个月、本月的日期(strtotime,date)

    今天写程序的时候,突然发现了很早以前写的获取月份天数的函数,经典的switch版,但是获得上月天数的时候,我只是把月份-1了,估计当时太困了吧,再看到有种毛骨悚然的感觉,本来是想再处理一下的,但是一想 ...