Wykop XS - XHR blocker

Wykop X - XHR Blocker Wykop X Style znajdziesz na: http://style.wykopx.pl

当前为 2024-02-06 提交的版本,查看 最新版本

// ==UserScript==
// @name        Wykop XS - XHR blocker
// @name:pl     Wykop XS - XHR blocker
// @name:en     Wykop XS - XHR blocker
// @version     2.60.0


// @author      Wykop X <[email protected]>
// @namespace   Violentmonkey Scripts
// @match       https://wykop.pl/*


// @supportURL  		http://wykop.pl/tag/wykopwnowymstylu
// @contributionURL  	https://buycoffee.to/wykopx


// @description Wykop X - XHR Blocker Wykop X Style znajdziesz na: http://style.wykopx.pl
// @description:en Wykop X - XHR Blocker. Check it out here: http://style.wykopx.pl


// @compatible  chrome, firefox, opera, safari, edge
// @license     No License

// @require https://unpkg.com/xhook@latest/dist/xhook.min.js

// ==/UserScript==

(async function ()
{
	'use strict';

	let dev = false;
	let wykopxSettings = getComputedStyle(document.querySelector("head"));
	let settings = {};

	settings.WykopXSEnabled = wykopxSettings.getPropertyValue("--WykopXSEnabled") ? wykopxSettings.getPropertyValue("--WykopXSEnabled") === '1' : true;
	if (settings.WykopXSEnabled == false) return true;

	settings.wxsBlockXHRExternal = wykopxSettings.getPropertyValue("--wxsBlockXHRExternal") ? wykopxSettings.getPropertyValue("--wxsBlockXHRExternal") === '1' : true;
	settings.wxsBlockXHRInternalAds = wykopxSettings.getPropertyValue("--wxsBlockXHRInternalAds") ? wykopxSettings.getPropertyValue("--wxsBlockXHRInternalAds") === '1' : true;

	if (settings.wxsBlockXHRExternal == false && settings.wxsBlockXHRInternalAds == false) return true;

	if (!dev) dev = wykopxSettings.getPropertyValue("--wxsDev") ? wykopxSettings.getPropertyValue("--wxsDev") === '1' : false;

	let allowed = [];
	if (settings.wxsBlockXHRExternal) allowed.push('https://wykop.pl/api/', 'https://raw.githubusercontent.com/wykopx/', 'wykopx.pl');

	let prohibited = [];
	if (settings.wxsBlockXHRInternalAds) prohibited.push("https://wykop.pl/api/v3/ads");


	xhook.before((request, callback) =>
	{

		if (allowed.some(str => request.url.includes(str)) && !prohibited.some(str => request.url.includes(str)))
		{
			if (dev) console.log("Wykop X - XHR Blocker | XHR: 🌍 " + request.url);
			callback();
		}
		else
		{
			if (dev) console.log("Wykop X - XHR Blocker | XHR: ⛔ " + request.url + " (BLOCKED)");
		}
	});
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址