上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖

油猴脚本不能劫持页面上的所有fetch请求

[复制链接]
  • TA的每日心情
    奋斗
    2022-10-28 17:23
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    2

    主题

    7

    回帖

    11

    积分

    助理工程师

    积分
    11
    发表于 2022-10-21 16:30:31 | 显示全部楼层 | 阅读模式
    悬赏15油猫币已解决

    油猴脚本代码如下,但是在指定页面中不能捕获到对应的fetch请求,请问我该如何获取到该fetch请求呢?

    // ==UserScript==
    // @name         xx 功能增强
    // @namespace    http://tampermonkey.net/
    // @version      0.1
    // @description  xx 调试功能
    // @author       You
    // @match    https://xxx/main/biz_details/*/xx?defaultActiveKey=debug
    // @icon         https://www.google.com/s2/favicons?sz=64
    // @grant        unsafeWindow
    // ==/UserScript==
    
    (function () {
        console.log(window.unsafeWindow)
    
        const originFetch = fetch;
        console.log(originFetch);
        window.unsafeWindow.fetch = (url, options) => {
            console.log('外层捕获请求',url);
            return originFetch(url, options).then(async (response) => {
                console.log('内层捕获请求',url);
                if (url === 'https://xxx/v3/curlRtpQuery') {
                    console.log('捕获链接',url);
                    const responseClone = response.clone();
                    let res = await responseClone.json();
                    res.data.push('油猴脚本修改数据')
                    const responseNew = new Response(JSON.stringify(res), response);
                    return responseNew;
                } else {
                    return response;
    
                }
            });
        };
    
        // Your code here...
    })();

    image.png
    image.png

    最佳答案

    查看完整内容

    docuemnt-start 注入没追上发送速度
  • TA的每日心情
    开心
    2023-2-28 23:59
  • 签到天数: 191 天

    [LV.7]常住居民III

    637

    主题

    5194

    回帖

    6076

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    6076

    荣誉开发者管理员油中2周年生态建设者喜迎中秋

    发表于 2022-10-21 16:30:32 | 显示全部楼层
    docuemnt-start
    注入没追上发送速度
    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-3-13 10:14
  • 签到天数: 211 天

    [LV.7]常住居民III

    293

    主题

    3903

    回帖

    3822

    积分

    管理员

    积分
    3822

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 2022-10-21 16:44:39 | 显示全部楼层
    论坛搜一下有很多资料的,还有大佬封装好的库

    ajaxHooker
    https://scriptcat.org/script-show-page/637

    ajax劫持库ajaxHooker
    https://bbs.tampermonkey.net.cn/thread-3284-1-1.html
    (出处: 油猴中文网)

    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。/ 微信公众号:一之哥哥
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-10-28 17:23
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    2

    主题

    7

    回帖

    11

    积分

    助理工程师

    积分
    11
    发表于 2022-10-21 18:10:21 | 显示全部楼层
    王一之 发表于 2022-10-21 16:44
    论坛搜一下有很多资料的,还有大佬封装好的库

    ajaxHooker

    你好,该怎么使用这个库呢,我开头加入// @require https://scriptcat.org/lib/637/1.0.2/ajaxHooker.js 字段后,IDE显示ajaxHooker未定义。在我的页面启用脚本后,返回为空,并提示“无法获取 eden-config”。
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-10-28 17:23
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    2

    主题

    7

    回帖

    11

    积分

    助理工程师

    积分
    11
    发表于 2022-10-21 18:10:52 | 显示全部楼层
    李恒道 发表于 2022-10-21 16:44
    docuemnt-start
    注入没追上发送速度

    确实是这样的,加入后可以注入成功。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-3-13 10:14
  • 签到天数: 211 天

    [LV.7]常住居民III

    293

    主题

    3903

    回帖

    3822

    积分

    管理员

    积分
    3822

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 2022-10-21 19:43:09 | 显示全部楼层
    永远的异乡人 发表于 2022-10-21 18:10
    你好,该怎么使用这个库呢,我开头加入// @require https://scriptcat.org/lib/637/1.0.2/ajaxHooker.js  ...

    ide是不会有提示的

    “无法获取 eden-config”这个是网站问题吧
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。/ 微信公众号:一之哥哥
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-10-28 17:23
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    2

    主题

    7

    回帖

    11

    积分

    助理工程师

    积分
    11
    发表于 2022-10-21 21:03:28 | 显示全部楼层
    王一之 发表于 2022-10-21 19:43
    ide是不会有提示的

    “无法获取 eden-config”这个是网站问题吧

    请问有现成的例子可以用吗,我的老是出错
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-3-13 10:14
  • 签到天数: 211 天

    [LV.7]常住居民III

    293

    主题

    3903

    回帖

    3822

    积分

    管理员

    积分
    3822

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 2022-10-21 21:05:00 | 显示全部楼层
    永远的异乡人 发表于 2022-10-21 21:03
    请问有现成的例子可以用吗,我的老是出错

    我没有哦 看看那个帖子吧
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。/ 微信公众号:一之哥哥
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    862

    回帖

    1361

    积分

    荣誉开发者

    积分
    1361

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2022-10-21 21:16:51 | 显示全部楼层
    永远的异乡人 发表于 2022-10-21 18:10
    你好,该怎么使用这个库呢,我开头加入// @require https://scriptcat.org/lib/637/1.0.2/ajaxHooker.js  ...

    在代码前加一句:/* globals ajaxHooker */
    其实不管也无所谓,只是es-lint的语法检查。eden-config应该不是这个库的问题。
    回复

    使用道具 举报

    发表回复

    本版积分规则

    快速回复 返回顶部 返回列表