Može li JavaScript promijeniti proxy vašeg preglednika?
Razlikujte običan kod web stranice od ovlaštenog proširenja preglednika koje može postaviti proxy.
Skripta koja se izvršava na web stranici nema opću postavku koja mijenja odlazni proxy preglednika. Proširenje preglednika može imati dodatne dozvole, ali radi po drugačijem sigurnosnom i konfiguracijskom modelu.
Ta se razlika gubi u starim odgovorima s foruma. Kod koji koristi privilegirane unutrašnjosti Firefoxa, stare module proširenja ili napuštene add-on SDK-ove nikada nije bio običan API web stranice. Lijepljenje takvog isječka u stranicu ne daje te privilegije.
Koristite API za proširenja preglednika
Firefox proširenje može koristiti dokumentirani proxy.settings API uz potrebne dozvole. Chrome nudi vlastiti proxy API za proširenja. Njihovi konfiguracijski modeli se razlikuju; provjerite zahtjeve manifesta i podržane postavke za preglednik koji ciljate.
Proširenje treba uzeti u obzir i pravila ili druga proširenja koja kontroliraju istu postavku. Uspješan API poziv nije razlog da pretpostavite da svako odredište sada slijedi putanju koju ste zamislili. Provjerite dobivenu konfiguraciju i sačuvajte mogućnost korisnika da je vrati.
Promjena URL-a dohvata mijenja odredište
Web stranica može pozvati poslužitelj aplikacije koji prosljeđuje zahtjev u njeno ime, prema web pravilima preglednika. U tom se dizajnu preglednik spaja na taj poslužitelj aplikacije. Nije instalirao opći proxy preglednika niti promijenio putanju koju koriste nepovezane kartice.
Slično tome, slanje zaglavlja s drugom IP adresom ne mijenja izvornu adresu veze. Odredište može tumačiti pouzdane metapodatke prosljeđivanja prema vlastitim pravilima, ali mrežna putanja je zasebna činjenica.
Ako je vaš cilj proxy koji mijenja IP za pregledanje, odaberite prikladan unos s popisa besplatnih proxyja i postavite podržani proxy preglednika ili ovlašteno proširenje. Ako je cilj udaljeni dohvat jedne web aplikacije, projektirajte tu značajku oko njenih stvarnih granica poslužitelja i preglednika.