您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
应用场景:当我们想下载某个网站的资源时,很多时候,由于同源策略问题,并不能通过直接访问下载链接进行下载\n使用方法:打开控制台,调用downloadResource函数,传入参数为下载地址
// ==UserScript== // @name 同源下载 // @namespace https://gf.qytechs.cn/users/943170 // @version 1.0 // @description 应用场景:当我们想下载某个网站的资源时,很多时候,由于同源策略问题,并不能通过直接访问下载链接进行下载\n使用方法:打开控制台,调用downloadResource函数,传入参数为下载地址 // @author nixingshiguang // @match *://*/* // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; const getFileName = (response) => { const contentDisposition = response.headers.get('Content-Disposition'); let filename = 'downloaded_resource'; if (contentDisposition) { const filenameMatch = contentDisposition.match(/filename="?(.+?)"?;/); if (filenameMatch && filenameMatch.length > 1) { filename = filenameMatch[1]; } } return filename; }; // 纯函数:保存文件 const saveAs = (blob, filename) => { const url = window.URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = filename; document.body.appendChild(a); a.click(); a.remove(); window.URL.revokeObjectURL(url); }; // 纯函数:下载资源 const downloadResource = async (url) => { try { const response = await fetch(url); if (!response.ok) { throw new Error(`HTTP error! status: ${response.status}`); } const blob = await response.blob(); const filename = getFileName(response); saveAs(blob, filename); } catch (error) { console.error('Download failed:', error); } }; window.downloadResource = downloadResource; console.log('脚本加载完成'); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址