您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Block Instagram from registering that you've viewed stories
- // ==UserScript==
- // @name Blocki
- // @namespace https://github.com/jOaawd/
- // @version 1.0
- // @description Block Instagram from registering that you've viewed stories
- // @author https://github.com/jOaawd/
- // @match *://www.instagram.com/*
- // @grant none
- // @license CC BY-NC 4.0 https://creativecommons.org/licenses/by-nc/4.0/
- // ==/UserScript==
- (function () {
- 'use strict';
- const blockPattern = /PolarisAPIReelSeenMutation|PolarisStoriesV3SeenMutation/i;
- // XMLHttpRequest
- const originalXHROpen = XMLHttpRequest.prototype.open;
- const originalXHRSend = XMLHttpRequest.prototype.send;
- XMLHttpRequest.prototype.send = function (body) {
- if (typeof body === 'string' && blockPattern.test(body)) {
- console.log('[Blocki] Blocked XHR story seen mutation:', body);
- return; // Block the request
- }
- return originalXHRSend.apply(this, arguments);
- };
- // Fetch
- const originalFetch = window.fetch;
- window.fetch = function () {
- const args = arguments;
- let bodyToCheck = '';
- try {
- const request = args[0];
- const options = args[1] || {};
- bodyToCheck = options.body || '';
- if (typeof bodyToCheck === 'string' && blockPattern.test(bodyToCheck)) {
- console.log('[Blocki] Blocked fetch story seen mutation:', bodyToCheck);
- return new Promise(() => {}); // Return a never resolving Promise to silently cancel
- }
- } catch (err) {
- console.warn('[Blocki] Error checking fetch body', err);
- }
- return originalFetch.apply(this, args);
- };
- })();