将网站请求的 URL 重定向到我自己的 URL

Redirect URLs that the website requests to my own URL

我想知道我是否可以使用 Greasemonkey 将网站请求的 JSON、.jpg、.mp3 或任何其他文件 URL 重定向到我自己的 URL?

示例:

如果网站请求 https://example.com/example.json,我希望将其重定向到 https://mywebsite.com/myjson.json。我还想重定向一些其他文件 URL,所以我不想重定向所有内容,只希望重定向一些特定文件。

您可以编写 运行 位于文档开始处(在页面 运行 上的任何脚本之前)的用户脚本,以用您自己的方法覆盖 XMLHttpRequest.prototype.open,从而替换第二个参数的example.commywebsite.com。大致如下:

// ==UserScript==
// @name         Redirect
// @include      /https?://example\.com/
// @run-at       document-start
// @grant        none
// ==/UserScript==

const origOpen = XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function(...args) {
  if (typeof args[1] === 'string') {
    args[1] = args[1].replace('example.com', 'mywebsite.com');
  }
  return origOpen.apply(this, args);
};