Mock.JS拦截HTTP请求实例解析

mockjs是一种比较通用的前端模拟http请求及回复的工具,能够仿真处各类http的请求及返回结果。实现在无后端的情况下,前端对于后端接口的仿真。mock的基础使用也是比较简单,本文我们主要和大家分享mock.js拦截http请求实例解析,希望能帮助到大家。

但,在引入MockJS时,

import Mock from 'mockjs'

登录后复制登录后复制

会拦截所有前端发出的HTTP请求,无论是否使用Mock.mock开启Mock仿真,都会拦截HTTP请求。
这也就是为何,就算不Mock.mock也会后端无法获取前端HTTP请求的原因。

因此,一旦引用mockjs的情况下,无法通过前端发出HTTP请求,而会被mockjs拦截

需要在npm run build之前,先去除对于mockjs的引用。

Dev环境和Release环境下Mock的引用

import global from '../src/common/global';if (global.env === 'dev'){    var Mock = require('mockjs');}if (global.env === 'dev'){    //Run MOCK     for (let mockData of mockDatas){        //console.log(mockData);        Mock.mock(mockData.url, mockData.data);    }}

登录后复制登录后复制

仅在Dev开发环境下global.env === ‘dev’,引入Mockjs,以免在release的版本中,真正的HTTP请求被拦截。

此处的global为自定义的全局config变量,而不是全局变量。

Mock.JS拦截HTTP请求的问题

MockJS是一种比较通用的前端模拟HTTP请求及回复的工具,能够仿真处各类HTTP的请求及返回结果。实现在无后端的情况下,前端对于后端接口的仿真。Mock的基础使用也是比较简单:Mock.JS官网
但,在引入MockJS时,

import Mock from 'mockjs'

登录后复制登录后复制

会拦截所有前端发出的HTTP请求,无论是否使用Mock.mock开启Mock仿真,都会拦截HTTP请求。
这也就是为何,就算不Mock.mock也会后端无法获取前端HTTP请求的原因。

因此,一旦引用mockjs的情况下,无法通过前端发出HTTP请求,而会被mockjs拦截

需要在npm run build之前,先去除对于mockjs的引用。

Dev环境和Release环境下Mock的引用

import global from '../src/common/global';if (global.env === 'dev'){    var Mock = require('mockjs');}if (global.env === 'dev'){    //Run MOCK     for (let mockData of mockDatas){        //console.log(mockData);        Mock.mock(mockData.url, mockData.data);    }}

登录后复制登录后复制

仅在Dev开发环境下global.env === ‘dev’,引入Mockjs,以免在release的版本中,真正的HTTP请求被拦截。

此处的global为自定义的全局config变量,而不是全局变量。

相关推荐:

使用 mock.js 让前端开发与后端独立

mock.js随机数据和使用express输出json接口实例教程

Node.js服务器环境下使用Mock.js拦截AJAX请求的教程

以上就是Mock.JS拦截HTTP请求实例解析的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2784961.html

(0)
上一篇 2025年3月8日 17:17:52
下一篇 2025年3月8日 17:17:56

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • js中table数据导出excel文件

    本文主要和大家分享一些代码,主要和大家分享js中table数据导出excel文件的方法实例,希望能帮助到大家。 表格转换成excel并下载 (document).ready(function () {(“#myBtn”).click(fun…

    编程技术 2025年3月8日
    200
  • Node.js get,post提交数据实例代码

    本文主要和大家分享Node.js getpost提交数据实例代码,希望能帮助到大家。 demo.js: //引入http模块var http=require(‘http’);var url=require(‘url’);var ejs=re…

    编程技术 2025年3月8日
    200
  • JS经纬度距离计算代码分享

    本文主要和大家分享js经纬度距离计算代码分享,希望大家能用以下代码学会计算js经纬度距离,希望能帮助到大家。  GetDistance:function(lat1, lng1, lat2, lng2, len_type = 2, decim…

    编程技术 2025年3月8日
    200
  • js正则表达式如何应用

    本文主要和大家js中正则表达式的应用实例(包括面试题),希望能帮助到大家,能让大家正确使用js正则表达式。 1、找重复项最多的字符和个数 var str = 'sassdfdfffdasdffffffsdsdddsss'…

    编程技术 2025年3月8日
    200
  • JS代码怎样实现记住账号密码

    这次给大家带来js代码怎样实现记住账号密码,js代码实现记住账号密码的注意事项有哪些,下面就是实战案例,一起来看一下。 很多登录功能上都有个“记住密码”的功能,其实无非就是对cookie的读取。 引用添加Cookie setCookie (…

    编程技术 2025年3月8日
    200
  • js、jq如何验证银行卡账号代码分享

    本文主要和大家分享js、jq如何验证银行卡账号代码,本文主要通过代码来分享,希望能帮助到大家。 nbsp;html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3…

    编程技术 2025年3月8日
    200
  • SpringMvc+AngularJs应如何使用

    这次给大家带来springmvc+angularjs应如何使用,springmvc+angularjs使用的注意事项有哪些,下面就是实战案例,一起来看一下。 前端框架分段繁杂,框架本身也是日新月异,但是不免还是有很多好的框架,例如jQuer…

    2025年3月8日 编程技术
    200
  • js中的BOM如何正确操作

    一、什么是BOM? bom:browser object model 是浏览器对象模型,浏览器对象模型提供了独立与内容的、可以与浏览器窗口进行互动的对象结构,bom由多个对象构成,其中代表浏览器窗口的window对象是bom的顶层对象,其他…

    2025年3月8日
    200
  • 用Video.js实现H5直播界面

    这次给大家带来用video.js实现h5直播界面,用video.js实现h5直播界面的注意事项有哪些,下面就是实战案例,一起来看一下。 最近做了一个移动端H5简易版直播页,只有直播功能,后期再添加弹幕和礼物,要求是在微信中,虽然没有涉及到录…

    编程技术 2025年3月8日
    200
  • node.js的path模块详解

    这次给大家带来node.js的path模块详解,使用node.js的path模块的注意事项有哪些,下面就是实战案例,一起来看一下。 //引用该模块var path = require(“path”); 1、路径解析,…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论