I PAC bruger shExpMatch jokertegn i shell-stil. For underdomæner af example.com:

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

Brug de HTTP-endepunkter, som politikken har valgt, i disse returværdier; HTTP-proxylisten leverer kandidater til tilladte offentlige ruter. Stjernen matcher en sekvens af tegn. Den er ikke en gentagelsesoperator for regulære udtryk, så et regex-agtigt .*example.com ændrer betydningen.

Medtag det præcise overordnede navn eksplicit, når det hører til politikken:

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

At bruge *example.com i stedet ville også acceptere navne, der ender med disse bogstaver uden et adskillende punktum. Det udvider mængden ud over den tilsigtede domænegrænse.

Den portable PAC-jokertegnsbaseline omfatter * og ?; tegnklasser varierer efter implementering. Et JavaScript-regex bruger i stedet test() og sine egne regler for forankring og escaping.

Match det tilsigtede input. host er et værtsnavn, mens url indeholder en skema og kan være blevet renset. En domæneregel bør ikke ved et uheld afhænge af en sti, som browseren aldrig leverer.

Relaterede artikler