Billi tikklikkja fuq il-links stazzjonati fuq VKontakte, tinduna li, bħal f'netwerks soċjali oħra, l-ewwel hemm transizzjoni għal rabta "sikura", u wara n-netwerk soċjali jiddeċiedi jekk l-utent għandux jitħalla aktar jew le. Ħafna nies attenti nnotaw id-dehra ta 'nofs sekonda ta' "vk.com/away.php" fil-bar tal-indirizz tal-browser, iżda, ovvjament, ma taw l-ebda importanza għaliha.
preistorja
Ġurnata waħda, ċertu programmatur, wara li temm proġett ieħor, induna li kien ossessjonat bix-xewqa li jgħid lil kulħadd dwaru. Il-proġett kien ospitat fuq server b'IP uniku, iżda mingħajr isem ta 'dominju. Għalhekk, malajr inħoloq sottodominju sabiħ tat-tielet livell fid-dominju .ddns.net, li finalment intuża bħala rabta.
Ritorn lejn il-post wara ftit, il-programmatur skopra li minflok is-sit, kien qed jinfetaħ stub VK, li jinforma dwar it-tranżizzjoni għal sit mhux sikur:
Jidher li l-utenti intelliġenti nfushom għandhom id-dritt li jiddeċiedu liema sit għandhom imorru u liema le, iżda VKontakte jaħseb b'mod differenti u ma jipprovdi l-ebda opportunità biex isegwu l-link mingħajr krozzi.
X'hemm ħażin
Din l-implimentazzjoni għandha diversi żvantaġġi sinifikanti:
- Inabbiltà li tiftaħ sit suspettuż. Kif intqal hawn fuq, l-utent m'għandu l-ebda mod biex jegħleb l-istub. L-uniku mod biex tiftaħ il-link huwa li tikkopja u tippejstjaha fil-bar tal-indirizz.
- Inaqqas in-navigazzjoni tal-link. Il-veloċità tar-ridirezzjoni tiddependi fuq il-ping. Għaldaqstant, b'ping għoli, jistgħu jintilfu sekondi prezzjużi ta 'ħajja, li, kif nafu, mhux aċċettabbli.
- Monitoraġġ tat-tranżizzjoni. Dan il-metodu jagħmilha aktar faċli biex tinġabar informazzjoni dwar l-azzjonijiet tal-utent, li, ovvjament, huwa dak li juża VK, u jżid mal-link sigur l-id tal-post li minnu saret it-tranżizzjoni.
Il-ħelsien ta’ Django
L-aħjar soluzzjoni għall-problemi kollha ta 'hawn fuq tista' tkun estensjoni tal-browser. Għal raġunijiet ovvji, l-għażla taqa 'fuq Chrome. Hemm waħda eċċellenti fuq il-hub
Biex noħolqu estensjoni bħal din, ikollna bżonn noħolqu żewġ fajls f'folder separat: json-Manifest u fajl JavaScript biex jimmonitorjaw l-indirizz url attwali.
Oħloq fajl Manifest
Il-ħaġa ewlenija li neħtieġu hija li nagħtu l-permess tal-estensjoni biex taħdem mat-tabs u tassenja script eżekutibbli:
{
"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"
}
}
Oħloq fajl js
Hawnhekk kollox huwa sempliċi: fil-każ imsejjaħ meta tinħoloq tab ġdida, aħna nżidu kontroll għall-indirizz url jekk jibda b' "
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});
}
});
});
Armar tal-estensjoni
Wara li tkun żgur li ż-żewġ fajls huma fl-istess folder, iftaħ Chrome, agħżel it-tab tal-estensjoni u kklikkja "Tagħbija estensjoni mhux ippakkjata". Fit-tieqa li tiftaħ, agħżel il-folder tal-fajl estiż bil-miktub u kklikkja Iġbor. Lest! Issa l-links kollha bħal vk.com/away huma sostitwiti b'dawk oriġinali.
Minflok ma tikkonkludi
Naturalment, dan it-tip ta 'stub salva ħafna nies minn miljuni ta' siti frawdolenti, madankollu, nemmen li n-nies infushom għandhom id-dritt li jiddeċiedu jekk ikklikkja fuq link mhux sigur jew le.
Għall-konvenjenza, I stazzjonati l-proġett fuq
Sors: www.habr.com