o0OoO0o
V2EX  ›  问与答

基于规则,修改 HTTP POST 请求的 浏览器扩展/插件?(Chrome/Firefox)

  •  
  •   o0OoO0o · Jan 1, 2019 · 6984 views
    This topic created in 2720 days ago, the information mentioned may be changed or developed.

    例如每当我们访问 languagetool.org ,都自动把 HTTP 头,accept-language 修改成 en-US,en
    ——很多扩展都可以做到,例如 HeaderEditor、Requestly

    但是有没这种扩展:预定义规则后,每当向某个 URL 发送 POST 请求时,都自动把其中的某参数,修改成某个值?

    如果仅仅单次调试,用 Tamper Chrome 或者 Fiddler 就好,但我是希望设定好规则后,日常一直生效,不只是临时调一次。

    大佬们知道,哪一款浏览器扩展 /插件 /脚本,能做到吗?😄

    15 replies    2019-01-01 18:32:08 +08:00
    lichdkimba
        1
    lichdkimba  
       Jan 1, 2019 via iPhone
    应该没有吧。。
    entertainyou
        2
    entertainyou  
       Jan 1, 2019 via Android
    可行的一个方案(非浏览器插件),mitmproxy,可以使用 scripting 来实现你的需求,然后浏览器设置代理连接 mitmproxy 就行。

    note 使用代理浏览 ssl 网页会需要导入证书。
    o0OoO0o
        3
    o0OoO0o  
    OP
       Jan 1, 2019
    @entertainyou #2 谢谢,初步看了官网介绍,如果没理解错,和 Fiddler 的 FiddlerScript 有点像?
    没提 FiddlerScript,就是因为太重了,每次上网还要单独开个 Fiddler。假如真没扩展的话,只能用这种方案拉
    等会试一下 mitmproxy 的内存占用,会否比 Fiddler 小很多,这样单独开也无所谓,anyway 谢谢老兄😁
    binux
        4
    binux  
       Jan 1, 2019   ❤️ 2
    Resource Override
    o0OoO0o
        5
    o0OoO0o  
    OP
       Jan 1, 2019
    @binux #4 能说详细一点吗?
    我看了 Resource Override 的文档,它支持 4 种规则:
    https://i.loli.net/2019/01/01/5c2a74a5ba03b.png
    第一二三不用说了,很明显不是。第 4 种,只能修改 HTTP 头,跟同类扩展 HeaderEditor、Requestly 的能力集是一样的,都不能修改 POST 的参数。或是我哪里理解错了?
    yangg
        6
    yangg  
       Jan 1, 2019 via iPhone
    anyproxy
    binux
        7
    binux  
       Jan 1, 2019
    @o0OoO0o #5 你要改请求啊,没看清,这个是改返回的。
    Telegram
        8
    Telegram  
       Jan 1, 2019 via iPhone   ❤️ 1
    Smart Header,很方便的工具,推荐
    Telegram
        9
    Telegram  
       Jan 1, 2019 via iPhone
    噢,你要改 post 的内容,那可能需要 charles 这类大刀了
    40huo
        10
    40huo  
       Jan 1, 2019 via Android
    burp suite
    wentaoliang
        11
    wentaoliang  
       Jan 1, 2019 via iPhone
    whistle。是可以做一些数据更改的,但是这个 post 数据行不行倒是没试过,很好用的一款工具
    autoxbc
        12
    autoxbc  
       Jan 1, 2019   ❤️ 1
    试了上面 Smart Header 可以

    核心代码很短,自己写也不麻烦
    https://github.com/FirefoxBar/HeaderEditor/blob/master/src/background.js
    param
        13
    param  
       Jan 1, 2019 via Android
    smart header,requestly
    brotherlegend
        14
    brotherlegend  
       Jan 1, 2019 via Android
    @binux 好东西,
    ntdll
        15
    ntdll  
       Jan 1, 2019
    “都不能修改 POST 的参数”?你指的 POST 参数是什么?

    所有请求不同的只是谓语词,Request Header 是相同的,GET/HEAD 谓语词不具有 Request Body,其他如 POST/PUT 这样的是可以具有 Request Body 的。

    我猜测你希望的是修改 Request Body ?由于 Request Body 是由开发者自行定义数据格式的,因此比较难做通用的修改工具,并不像 Request Headers 固定为 Key-Value 的形式

    https://upload-images.jianshu.io/upload_images/2964446-fdfb1a8fce8de946.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/466/format/webp
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3243 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 131ms · UTC 02:42 · PVG 10:42 · LAX 19:42 · JFK 22:42
    ♥ Do have faith in what you're doing.