搞快点

使用 Fiddler 向指定页面中注入 js 或修改页面内容, 本地文件/目录响应请求

有时候调试网页,需要在第三方页面中注入点 js 或修改一些代码, 来进行自己的测试

修改页面内容

使用方法如下

打开 fiddler 选择右边的 fiddlerscript 选项卡, 或者从菜单 – Rules(规则) – Customize Rules(自定义规则) 打开

点击转到 – 选择 OnBeforeResponse 添加如下代码

static function OnBeforeResponse(oSession: Session) {
  if (m_Hide304s && oSession.responseCode == 304) {
    oSession['ui-hide'] = 'true'
  }
  // 判断如果是百度或是请求url中包含 baidu.com 的响应就在head前面添加一个 js 弹窗
  if (oSession.HostnameIs('www.baidu.com')||oSession.uriContains('baidu.com') && oSession.oResponse.headers.ExistsAndContains('Content-Type','text/html')){
    oSession.utilDecodeResponse()
    oSession.utilReplaceInResponse('</head>','<script>alert('哈哈');</script></head>')
  }
}

也可以使用正则替换,代码如下

// 解码响应内容
oSession.utilDecodeResponse()
var oBody = System.Text.Encoding.UTF8.GetString(oSession.responseBodyBytes)
// 使用正则进行替换
var oRegEx = /<\/head>/gi
oBody = oBody.replace(oRegEx, '<script>alert(1);</script></head>')
//设置新的响应内容
oSession.utilSetResponseBody(oBody)

最后点击保存即可

本地文件响应

指定一个文件来代替请求的文件

编辑 fiddlerscript 添加如下代码

static function OnBeforeResponse(oSession: Session) {
  // 如果请求url中包含nav.js 就用 D:/nav.js 来响应
  if (oSession.uriContains('nav.js')) {
    oSession['x-replywithfile'] ='D:/nav.js'
  }
}

除了编辑 fiddlerscript,可以选择在右侧打开 自动回复器选项卡 ,添加规则并启用,效果相同

本地目录响应

原理同响应单个文件,只是封装了方法批量替换

static function OnBeforeResponse(oSession: Session) {
  if (m_Hide304s && oSession.responseCode == 304) {
      oSession['ui-hide'] = 'true'
  }

  var domain:String='http://images.ehaofang.com/navtest/'
  // 本地目录 注意使用 '/' 代替 '\'
  var folder:String='C:/Users/Ehaofang/Desktop/1/'
  AutoResponseFolder(oSession, domain, folder)
}

static function AutoResponseFolder (oSession: Session, domain:String, folder:String) {
  // 获取当前对话的完整URL
  var fullUrl:String = oSession.fullUrl
  if (fullUrl.StartsWith(domain)) {
    var localPath:String = fullUrl.replace(domain, folder)
    // 设置延迟
    // oSession['response-trickle-delay'] = 1000
    oSession['x-replywithfile'] = localPath
    // FiddlerObject.log(localPath)
  }
}
赞(0) 打赏
未经允许不得转载:稻草人 » 使用 Fiddler 向指定页面中注入 js 或修改页面内容, 本地文件/目录响应请求

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址