固有のプロトコルに対するプロキシを設定できます。標準の JavaScript 機能のほとんどは、FindProxyForURL()() 関数で使用できるようになっています。たとえば、プロトコルに基づいて異なるプロキシを設定する場合は、substring()() 関数を使用できます。
function FindProxyForURL(url, host)
{
if (url.substring(0, 5) == "http:") {
return "PROXY http-proxy.mydomain.com:8080";
}
else if (url.substring(0, 4) == "ftp:") {
return "PROXY ftp-proxy.mydomain.com:8080";
}
else if (url.substring(0, 7) == "gopher:") {
return "PROXY gopher-proxy.mydomain.com:8080";
}
else if (url.substring(0, 6) == "https:" ||
url.substring(0, 6) == "snews:") {
return "PROXY security-proxy.mydomain.com:8080";
}
else {
return "DIRECT";
}
}
この処理は、次の例のように、shExpMatch() () 関数を使用して実行することもできます。
...
if (shExpMatch(url, "http:*")) {
return "PROXY http-proxy.mydomain.com:8080;
}
...