Fiddler调试线上JS代码

强力推荐一款js调试神器,Fiddler

大家平时肯定都用过火狐的Firebug或者谷歌的调试工具来调试JS,但遗憾的是我们不能像编辑html,css那样来直接新增或者删除JS代码.

  

虽然可以通过调试工具的控制台来动态执行JS代码,但有时候却远远不够用.

   

特别是当产线环境不能随意修改文件情况下,用线上环境来调试本地代码更是迫切的需求.

  

(往往本地测试通过,上线后却是各种bug.)

   

今天分享一下如何用Fiddler来修改并调试线上的JS代码.

   

以博客园首页为例子,用我本地的一个js文件来替换它的一个js.

    

查看首页源码发现一个js,就拿它开刷了.

1、打开fiddler,捕获博客园的首页请求.
找到“aggsite.js”的请求.

2、这里有个技巧,可以通过
“select”命令来筛选js请求. 在下面的命令框输入“select script”回车即可. 如下图.

3、接着把这个请求拖动到“AutoResponder”面板.

拖动之前记得先勾上 “Enable automatic responses”和 “Permit passthrough for unmatched requests”.

4、然后在Rule Editor的第二下拉框选择 “Find a file”来选择本地的JS文件, 选择后点 Save.

这里我用本地的“test fiddler.js”来替换博客园首页的“aggsite.js”.

“test fiddler.js”内容如下. 就是向body追加一段红色文字.

$(function(){
    var p=$("<p/>").text("这是fiddler加上的JS").css("text-align","center").css("color","red");
    $("body").prepend(p);
});

好了,刷新博客园首页看看效果.

可以看到,我们替换的js被执行了,接下来就可以在本地使用我们顺手的编辑器来写JS代码了,

本地保存后,刷新网页就能立刻看到效果,就跟在本地开发一样,是不是很方便?

最后想说其实你可以用同样的方式来替换图片,CSS,HTML.

总之一点就是利用线上的环境来测试你的代码,但又不对线上产生影响.

要知道保证不出onlinebug bug是多么的重要,虽然很难做到,但能避免就尽量吧.

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-16 07:59:58

Fiddler调试线上JS代码的相关文章

1-1 用本地代码调试线上环境代码

方法1:fillder             第一步:抓包抓取线上代码, 第二步:将远程代码拖到AutoResponder面板 第三步:浏览本地文件 第四步:修改你的文件刷新浏览器,成功,哈哈. 来自为知笔记(Wiz)

前端开发调试线上代码的两款工具

用过 Charles 和 Fiddler 这两款,记录如下. 一.Charles Charles 界面简单直观,易于上手,数据请求控制容易,修改也简单,抓取数据的开始暂停也方便.支持 win,mac,linux. 1. 安装前提Charles 需要有 Java 环境,请提前下载安装 JDK.JDK 已经 8 了. 根据自己的系统选择对应的JDK.我的是 win7,双击安装,一直下一步就哦了.在命令行窗口输入以下命令,出现截图所示就表示 JDK 安装成功了 2. 下载 Charles Charle

fiddler修改线上的内容

有时候本地的代码跟线上的代码还是运行环境还是有区别的.比如有些封装的方法需要运动到手机上可以调试,而浏览器是无法调试的.如果不想每次修改完再放上到测试环境看效果,那要怎么做呢?fiddler为我们提供了很多的便利,直接就可以让你通过本地的代码,来让线上马上就可以访问到.来来来,走起 操作如下:(图片发布到线上变形了,抱歉,不过基本可以看懂) 第一步:打开你需要替换的内容网站,找到你要替换的内容 比如我想替换博客园右边栏的那张广告图片,不错,我就是看不惯这个广告,所以我想把这个图给换掉.你可以在谷

分享下使用 svn,测试服务器代码自动更新、线上服务器代码手动更新的配置经验

分享下使用 svn,测试服务器代码自动更新.线上服务器代码手动更新的配置经验 利用SVN的POST-COMMIT钩子自动部署代码 Linux SVN 命令详解 Linux SVN 命令详解2

chrome浏览器调试线上文件映射本地文件

通过ReRes让chrome拥有路径映射的autoResponse功能. 前端开发过程中,经常会有需要对远程环境调试的需求.比如,修改线上bug,开发环境不在本地等等.我们需要把远程css文件或者js映射到本地的文件上,通过修改本地文件进行调试和开发.通常我们可以通过以下方法来实现映射: 1.修改host文件——只能把域名映射到IP 2.使用Apache或者nginx搭建反向代理——需要装环境,配置相对繁琐 3.使用Fiddler中的AutoRespnose功能——不支持目录映射,mac.lin

Mac php7本地安装mongodb扩展以适配使用mongo扩展的线上老代码

从https://pecl.php.net/package/mongodb官网下载压缩包(不懂事的我下载了1.5.1版本) 解压安装包 tar -zxvf mongodb-1.5.1.tgz 进入解压目录 运行phpize命令 cd mongodb-1.5.1 && phpize 编译扩展 $ ./configure \ $ make && make install 编辑etc/php.ini 添加下面一行 extension=mongodb.so 查看phpinfo()输

Django线上部署代码修改失效问题

记一次django项目的线上部署维护问题,django+nginx 关于nginx反向代理服务器的介绍这里有一篇博客介绍的比较好:nginx的相关介绍 以及当一次客户端请求发出后,uwsig以及uWSGI,Nginx之间的大致流程:uWSGI.WSGI和uwsgi 一.问题描述 在将django项目部署到阿里云(nginx作为web服务器)上之后,使用宝塔控制面板修改项目源码,或者使用直接在终端修改,修改之后重启uwsgi和nginx无效. 二.问题分析 1.本地环境 在本地环境的时候,是使用D

idea如何远程调试线上代码

1.在sh文件脚本文件中加上 # JVM DEBUG参数,用于调试,默认不开启# ClassLoader和Method Compile日志,用于调试COMPILE_LOADER_OPTS="-XX:+TraceClassLoading -XX:+TraceClassUnloading -XX:-PrintCompilation" # 远程调试参数REMOTE_DEBUG_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,

轻松排查线上Node内存泄漏问题

I. 三种比较典型的内存泄漏 一. 闭包引用导致的泄漏 这段代码已经在很多讲解内存泄漏的地方引用了,非常经典,所以拿出来作为第一个例子,以下是泄漏代码: 'use strict'; const express = require('express'); const app = express(); //以下是产生泄漏的代码 let theThing = null; let replaceThing = function () { let leak = theThing; let unused =