Yiyọ kuro "vk.com/away.php" tabi tẹle awọn ọna asopọ lati ọdọ eniyan ti o ni ilera

Nipa tite lori awọn ọna asopọ ti a fiweranṣẹ lori VKontakte, iwọ yoo ṣe akiyesi pe, bi ninu awọn nẹtiwọọki awujọ miiran, akọkọ iyipada kan wa si ọna asopọ “ailewu”, lẹhin eyi nẹtiwọọki awujọ pinnu boya olumulo yẹ ki o gba laaye siwaju tabi rara. Pupọ awọn eniyan ti o ni ifarabalẹ ṣe akiyesi ifarahan idaji-keji ti “vk.com/away.php” ninu ọpa adirẹsi ti ẹrọ aṣawakiri, ṣugbọn, nitorinaa, ko so eyikeyi pataki si rẹ.

Yiyọ kuro "vk.com/away.php" tabi tẹle awọn ọna asopọ lati ọdọ eniyan ti o ni ilera

prehistory

Ni ọjọ kan, oluṣeto eto kan, ti pari iṣẹ akanṣe miiran, rii pe ifẹ lati sọ fun gbogbo eniyan nipa rẹ jẹ afẹju rẹ. Ise agbese na ti gbalejo lori olupin pẹlu IP alailẹgbẹ, ṣugbọn laisi orukọ ìkápá kan. Nitorinaa, subdomain ipele kẹta ẹlẹwa ni a ṣẹda ni iyara ni aaye .ddns.net, eyiti a lo nikẹhin bi ọna asopọ kan. 

Pada si ifiweranṣẹ lẹhin igba diẹ, olupilẹṣẹ ṣe awari pe dipo aaye naa, stub VK kan n ṣii, n sọ nipa iyipada si aaye ti ko ni aabo:

Yiyọ kuro "vk.com/away.php" tabi tẹle awọn ọna asopọ lati ọdọ eniyan ti o ni ilera

Yoo dabi pe awọn olumulo ọlọgbọn funrararẹ ni ẹtọ lati pinnu aaye wo ni wọn yẹ ki o lọ si ati eyiti kii ṣe, ṣugbọn VKontakte ronu yatọ ati pe ko pese aye eyikeyi lati tẹle ọna asopọ laisi awọn crutches.

Kini aṣiṣe

Ilana yii ni ọpọlọpọ awọn alailanfani pataki:

  • Ailagbara lati ṣii aaye ifura kan. Gẹgẹbi a ti sọ loke, olumulo ko ni ọna lati bori stub. Ọna kan ṣoṣo lati ṣii ọna asopọ ni lati daakọ ati lẹẹmọ sinu ọpa adirẹsi.
  • Fa fifalẹ lilọ ọna asopọ. Iyara atunṣe da lori ping. Nitorinaa, pẹlu ping giga, awọn aaya iyebiye ti igbesi aye le sọnu, eyiti, bi a ti mọ, ko ṣe itẹwọgba.
  • Abojuto iyipada. Ọna yii jẹ ki o rọrun lati gba alaye nipa awọn iṣe olumulo, eyiti, nitorinaa, jẹ ohun ti VK nlo, ṣafikun si ọna asopọ to ni aabo id ti ifiweranṣẹ lati eyiti a ti ṣe iyipada naa.

Gbigbasilẹ Django

Ojutu ti o dara julọ si gbogbo awọn iṣoro ti o wa loke le jẹ itẹsiwaju ẹrọ aṣawakiri kan. Fun awọn idi ti o han gbangba, yiyan naa ṣubu lori Chrome. O tayọ kan wa lori ibudo nkan Nkan ti a ṣe igbẹhin si kikọ awọn amugbooro fun Chrome.

Lati ṣẹda iru itẹsiwaju bẹẹ, a yoo nilo lati ṣẹda awọn faili meji ni folda lọtọ: json-Manifest ati faili JavaScript kan lati ṣe atẹle adirẹsi url lọwọlọwọ.

Ṣẹda Faili Afihan

Ohun akọkọ ti a nilo ni lati fun igbanilaaye itẹsiwaju lati ṣiṣẹ pẹlu awọn taabu ati fi iwe afọwọkọ ti o le ṣiṣẹ:

{
  "manifest_version": 2,
  "name": "Run Away From vk.com/away",
  "version": "1.0",
  "background": {
    "scripts": ["background.js"]
  },
  "permissions": ["tabs"],
  "browser_action": {
    "default_title": "Run Away From vk.com/away"
  }
}

Ṣẹda faili js kan

Ohun gbogbo rọrun nibi: ninu iṣẹlẹ ti a pe nigbati a ṣẹda taabu tuntun, a ṣafikun ayẹwo kan fun adirẹsi url ti o ba bẹrẹ pẹlu “vk.com/away.php", lẹhinna rọpo rẹ pẹlu eyi ti o pe, eyiti o wa ninu ibeere GET:

chrome.tabs.onCreated.addListener( function (tabId, changeInfo, tab) {
	chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function (tabs) {
		var url = tabs[0].url;
		if (url.substr(0,23) == "https://vk.com/away.php"){
			var last = url.indexOf("&", 0)
			if(last == -1)last = 1000;
			var url = decodeURIComponent(url.substr(27, last-27));
			chrome.tabs.update({url: url});
		}
	});
});

Nto awọn itẹsiwaju

Lẹhin ṣiṣe idaniloju pe awọn faili mejeeji wa ni folda kanna, ṣii Chrome, yan taabu itẹsiwaju ki o tẹ “Fifuye itẹsiwaju ti a ko ṣajọpọ”. Ni window ti o ṣii, yan folda ti faili ti o gbooro sii ki o tẹ Gba. Ṣetan! Bayi gbogbo awọn ọna asopọ bi vk.com/away ti rọpo pẹlu awọn atilẹba.

Dipo ti pinnu

Nitoribẹẹ, iru stub yii ti fipamọ ọpọlọpọ eniyan lati awọn miliọnu awọn aaye arekereke, sibẹsibẹ, Mo gbagbọ pe awọn eniyan funrararẹ ni ẹtọ lati pinnu boya lati tẹ ọna asopọ ti ko ni aabo tabi rara.
Fun wewewe, Mo Pipa ise agbese lori github.

orisun: www.habr.com

Fi ọrọìwòye kun