თუ Jint PAC-ის შეფასებისას იუწყება გამოტოვებულ dnsResolve ან myIpAddress-ზე, მეტი JavaScript-ის ჩატვირთვა სავალდებულო გადაწყვეტა არ არის. ეს PAC დამხმარეები ჰოსტ-აპლიკაციის მიერ მოწოდებულ გარემოს ეკუთვნის.

FindProxyForURL-ის გამოძახებამდე

აირჩიეთ მხარდაჭერილი PAC დამხმარეების ნაკრები და მისამართების ოჯახები, შემდეგ დააყენეთ ეს დამხმარეები ძრავზე. შეინარჩუნეთ მათი კონტრაქტები: dnsResolve იღებს ჰოსტის სახელს, myIpAddress არგუმენტებს არ იღებს და სჭირდება ლოკალური ინტერფეისის პოლიტიკა, ხოლო shExpMatch იყენებს shell-ის სტილის შაბლონებს. მოსახერხებელი მნიშვნელობის დამბრუნებელმა stub-მა შეიძლება ჩუმად აირჩიოს არასწორი მარშრუტი.

ამ ინიციალიზაციის შემდეგ, ძირითადი გამოძახება 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-ისთვის. ერთი ნიმუშის შედეგის დამთხვევა ნაკლებს ამტკიცებს, ვიდრე ბრაუზერის მარშრუტიზაციის ქცევის დამთხვევა.

დაკავშირებული სტატიები