Në PAC, shExpMatch përdor wildcards të stilit shell. Për nëndomenet e example.com:

if (shExpMatch(host, "*.example.com")) {
    return "PROXY proxy.example:8080";
}

Përdorni në këto vlera kthimi pikat fundore HTTP të zgjedhura nga politika; lista e proxy-ve HTTP ofron kandidatë për rrugët publike të lejuara. Ylli përputhet me një sekuencë karakteresh. Nuk është operator përsëritjeje i shprehjes së rregullt, prandaj një .*example.com që duket si regex ndryshon kuptimin.

Përfshini në mënyrë eksplicite emrin e saktë të prindit kur bën pjesë në politikë:

if (host === "example.com" || shExpMatch(host, "*.example.com")) {
    return "PROXY proxy.example:8080";
}

Përdorimi i *example.com në vend të tij do të pranonte edhe emra që mbarojnë me ato shkronja pa një pikë ndarëse. Kjo e zgjeron grupin përtej kufirit të synuar të domenit.

Baza e portueshme e wildcards të PAC përfshin * dhe ?; klasat e karaktereve ndryshojnë sipas implementimit. Një regex JavaScript përdor në vend të tij test() dhe rregullat e veta të ankorimit dhe escapimit.

Përputhni inputin e synuar. host është një emër hosti, ndërsa url përfshin një skemë dhe mund të jetë sanitarizuar. Një rregull domeni nuk duhet të varet aksidentalisht nga një shteg që shfletuesi nuk e ofron kurrë.

Artikuj të ngjashëm