如何拦截网络请求

2023-11-21

有没有类似 Chromium 的东西chrome.webRequestSafari 扩展?我浏览了他们的文档here。我能找到的最接近的东西是SafariBeforeNavigateEvent。这将阻止新页面加载,但仍会将请求发送到服务器。此外,我认为它不会调用 AJAX 请求的侦听器。有人尝试过类似的东西吗?


我们通过使用“xmlhttprequest”覆盖解决了这个问题。

这是我们的 content.js 。我们注入 content.js 作为启动脚本

    $(document).ready(function() {

     var myScriptTag = document.createElement('script');
     myScriptTag.src = safari.extension.baseURI + 'js/injectedToPage.js';
     document.body.appendChild(myScriptTag);     

    });    

注入的代码是:(injectedToPage.js)

XMLHttpRequest.prototype.reallySend = XMLHttpRequest.prototype.send;
XMLHttpRequest.prototype.send = function (body) { 

        console.log("--req.body:---");
        console.log(body);

    this.reallySend(body);

};
var req = new XMLHttpRequest();
req.open("GET", "any.html", true);
req.send(null);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何拦截网络请求 的相关文章

随机推荐

  • HttpServletRequest#getParts() 返回一个空列表

    我有以下 HTML 表单
  • 如何合并两个 JSON 对象数组 - 在 Javascript/jQuery 中删除重复项并保留顺序?

    jsfiddle link http jsfiddle net vN6fn 1 假设我有这两个对象 var obj1 data id 1 comment comment1 id 2 comment comment2 id 3 comment
  • Rails 上的复选框

    在 Ruby on Rails 中制作与某个问题相关的复选框的正确方法是什么 目前我有 div class form row div
  • 在ggplot2中将一个面板设为空白

    p lt ggplot mtcars aes mpg wt p geom point facet grid cyl vs theme bw 我想将面板 右下角的 1 vs 8 设为空白 不显示任何数据点 但同时 我想保留这种安排 so fa
  • Excel:如果上面的单元格具有相同的值,则抑制?

    当上面的单元格具有相同的值时 Excel 是否可以抑制列中的值 我想要这样的东西 A 1234 2345 3456 B 4567 C 5678 6789 D 7890 8901 其中 A 下面的 2 个单元格实际上是 A 但被隐藏了 理想情
  • 从模块导入的变量在再次导入同一模块后变为$null

    我有一个简单的模块 varExp psm1 var1 20 导出模块成员 变量 var1 我将此模块导入到 PS 会话中 PS gt 导入模块 varExp psm1 then PS gt var1 20 但是当我第二次导入它之后 PS g
  • 了解 Selenium IDE 与 Selenium RC

    Selenium IDE 和 Selenium RC 在功能上有什么区别 Selenium IDE 是一个 Firefox 插件 为您提供用于记录测试的基本记录器 这些测试使用关键字记录在基于 HTML 表的架构中 IDE 使您能够将代码导
  • 如何使用 php 命令行定义多个 ini 设置?

    我正在尝试允许allow url fopen and rename暂时用于脚本的函数 我可以只用一个函数来完成它 但不能同时使用两个函数 像这样的东西 php d allow url fopen on rename on
  • 为强制定向网络中的每个链接指定颜色,networkD3::forceNetwork()

    问题是根据链接的值或权重指定两种不同的颜色networkD3 forceNetwork在 R 中 例如 Blue对于大于1的链接权重 dark对于小于 1 的链接权重 示例代码 复制自here the forceNetwork部分 libr
  • 为什么 Ruby 似乎随机访问目录中的文件?

    这是设计使然吗 这是代码 class FileRenamer def RenameFiles folder path files Dir glob folder path end end puts Renaming files rename
  • Java Swing GUI 的自动化测试 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 有哪些选项可以为用 Java Swing 编写的 GUI 构建自动化测试 我想测试一些使用以下代码编写的 GUINetBeans Swing GUI
  • 惰性洗牌算法

    我有一个很大的元素列表 我想以随机顺序迭代它们 但是 我无法修改该列表 也不想创建它的副本 因为 1 它很大 2 可以预期迭代会提前取消 List
  • 解析 XPath 表达式

    我正在尝试为 XPath 创建一个 AET 抽象表达式树 因为我正在编写一个 WYSIWYG XSL 编辑器 在过去的三到四个小时里 我一直在与 XPath BNF 碰头 我想到了另一个解决方案 我想我可以编写一个实现 IXPathNavi
  • 在 Android 中禁用屏幕锁定(电源)按钮

    我希望当我的应用程序运行电源按钮时 按下该按钮会锁定屏幕并且屏幕变黑 应该被禁用 使用户无法锁定屏幕 我在三星 Galaxy S 手机的默认相机应用程序中注意到了这个东西 这也是我尝试做同样事情的原因 我还有一个与相机相关的应用程序 试试这
  • vim 显示两行选项卡

    当你同时打开很多文件时 Vim 是否可以显示两行选项卡 我不希望出现选项卡溢出样式的箭头 这不完全是你所要求的 但我从使用选项卡切换到使用 BufExplorer 在它们之间切换的普通旧式多个缓冲区 http www vim org scr
  • 比较 VBA 中的日期

    我有两个文本框 有两个不同的日期 orderDate 和 receiveDate 收到的日期需要手动输入到表单中 我想包括在 orderDate 之后应该发生 receiveData 的验证 我已经尝试过 If txtRecievedDat
  • 使用相机拍摄的照片不包含任何 ALAsset 元数据

    最奇怪的事情正在发生 我有一个操作表 用户可以选择使用相机拍照或从相机胶卷中选择一张照片 当 UIImagePicker 从选择返回时 我使用 ALAssetsLibrary 来确定照片中嵌入的 GPS 信息 从相机胶卷中选择照片效果非常好
  • Beautifulsoup,达到最大递归深度

    这是一个beautifulsoup抓取所有内容的过程 p html 标签 从某些网页抓取内容后 我收到一条错误消息 指出超出了最大递归深度 def printText tags for tag in tags if tag class Na
  • 使用curl在PHP中获取HTTP代码

    我使用 CURL 来获取站点的状态 如果它是向上 向下或重定向到另一个站点 我想让它尽可能精简 但效果不佳 我把它包装在一个函数中 它工作正常 但性能不是最好的 因为它下载整个页面 如果我删除 output curl exec ch 它返回
  • 如何拦截网络请求

    有没有类似 Chromium 的东西chrome webRequestSafari 扩展 我浏览了他们的文档here 我能找到的最接近的东西是SafariBeforeNavigateEvent 这将阻止新页面加载 但仍会将请求发送到服务器