Jint-ൽ PAC മൂല്യനിർണ്ണയം: കാണാത്ത സഹായികളും റൂട്ട് ഫലങ്ങളും
FindProxyForURL വിളിക്കുന്നത് ഒരു ഘട്ടം മാത്രം: PAC സഹായികൾ നടപ്പിലാക്കേണ്ടത് ഹോസ്റ്റാണ്, നിർവ്വഹണം പരിമിതപ്പെടുത്തുകയും തിരികെ നൽകിയ റൂട്ട് പട്ടിക വ്യാഖ്യാനിക്കുകയും വേണം.
PAC മൂല്യനിർണ്ണയം ചെയ്യുമ്പോൾ dnsResolve അല്ലെങ്കിൽ myIpAddress ഇല്ലെന്ന് Jint റിപ്പോർട്ട് ചെയ്താൽ, കൂടുതൽ JavaScript ലോഡ് ചെയ്യുന്നത് പരിഹാരമായിരിക്കണമെന്നില്ല. ആ PAC സഹായികൾ ഹോസ്റ്റ് ആപ്ലിക്കേഷൻ നൽകുന്ന പരിസ്ഥിതിയുടെ ഭാഗമാണ്.
FindProxyForURL വിളിക്കുന്നതിന് മുമ്പ്
പിന്തുണയ്ക്കുന്ന PAC സഹായി കൂട്ടവും വിലാസ കുടുംബങ്ങളും തിരഞ്ഞെടുത്ത്, ആ സഹായികൾ എൻജിനിൽ ഇൻസ്റ്റാൾ ചെയ്യുക. അവയുടെ കരാറുകൾ സംരക്ഷിക്കുക: dnsResolve ഒരു ഹോസ്റ്റ്നെയിം സ്വീകരിക്കുന്നു, myIpAddress ആർഗ്യുമെന്റുകൾ സ്വീകരിക്കുന്നില്ല, ലോക്കൽ ഇന്റർഫേസ് നയം ആവശ്യമാണ്, shExpMatch ഷെൽ ശൈലിയിലുള്ള പാറ്റേണുകൾ ഉപയോഗിക്കുന്നു. സൗകര്യപ്രദമായ മൂല്യം നൽകുന്ന ഒരു സ്റ്റബ് നിശബ്ദമായി തെറ്റായ റൂട്ട് തിരഞ്ഞെടുത്തേക്കാം.
ആ ഇനിഷ്യലൈസേഷൻ കഴിഞ്ഞാൽ, Jint 4.4.0-ൽ പ്രധാന വിളി ഇങ്ങനെയാകാം:
var destination = new Uri(destinationUrl);
engine.Execute(pacSource);
var routeList = engine.Invoke(
"FindProxyForURL",
destinationUrl,
destination.IdnHost
).AsString();engine എന്നത് കോൺഫിഗർ ചെയ്ത Jint.Engine ആണ്; pacSource എന്നത് ലഭിച്ച PAC പ്രോഗ്രാമാണ്. പോർട്ടോ പാതയോ ഇല്ലാതെ ഹോസ്റ്റ്നെയിം നൽകുന്നത് destination.IdnHost ആണ്. ഈ വിളി PAC ലഭ്യമാക്കുന്നതോ പ്രോക്സി കണക്ഷൻ തുറക്കുന്നതോ അല്ല.
വിളിയ്ക്ക് ശേഷം
PROXY proxy.example:8080; DIRECT പോലുള്ള ഫലത്തെ ക്രമീകൃതമായ റൂട്ട് സ്ഥാനാർത്ഥികളുടെയും ബാക്കപ്പിന്റെയും പട്ടിക ആയി വ്യാഖ്യാനിക്കുക. ആ മുഴുവൻ സ്ട്രിംഗും പ്രോക്സി URL ആയി നൽകിയാൽ അതിന്റെ അർത്ഥം നഷ്ടപ്പെടും. മൂല്യനിർണ്ണയ പരാജയത്തെ വ്യക്തമായ DIRECT ഫലത്തിൽ നിന്ന് വേർതിരിക്കുക.
അത് പ്രവർത്തിക്കുമ്പോൾ
Jint-ന്റെ ദൈർഘ്യം, പ്രസ്താവന, മെമ്മറി, റദ്ദാക്കൽ നിയന്ത്രണങ്ങൾ കോൺഫിഗർ ചെയ്യുക, ആവശ്യമായ ഹോസ്റ്റ് ഫംഗ്ഷനുകൾ മാത്രം വെളിപ്പെടുത്തുക. DNS കോൾബാക്കുകൾ പ്രത്യേകം പരിമിതപ്പെടുത്തുക: JavaScript നിർവ്വഹണ പരിശോധനകൾ ഏകപക്ഷീയമായ തടയുന്ന ഹോസ്റ്റ് വിളിയെ തടസ്സപ്പെടുത്താവുന്നതാക്കുന്നില്ല. ഒരു എൻജിനിലേക്കുള്ള പ്രവേശനം ക്രമീകരിക്കുക അല്ലെങ്കിൽ സമകാലിക ജോലികൾക്ക് പ്രത്യേകം ഉടമസ്ഥതയുള്ള ഇൻസ്റ്റൻസുകൾ നൽകുക; എൻജിനുകൾ ഒരേസമയം ഉപയോഗത്തിന് സുരക്ഷിതമല്ല.
ബ്രൗസർ PAC നടപ്പാക്കലുകൾ സഹായി വിപുലീകരണങ്ങളിലും അവ വെളിപ്പെടുത്തുന്ന URL വിശദാംശങ്ങളിലും വ്യത്യാസപ്പെടാം, പ്രത്യേകിച്ച് HTTPS-ന്. ഒരു മാതൃകാ ഫലം ചേരുന്നത് ബ്രൗസറിന്റെ റൂട്ടിംഗ് സ്വഭാവം ചേരുന്നതിനേക്കാൾ കുറവ് സ്ഥാപിക്കുന്നു.