Το AutoHotkey 2 μπορεί να χρησιμοποιήσει το αντικείμενο COM WinHttpRequest των Windows για αίτημα μέσω ρητού διαμεσολαβητή:

request := ComObject("WinHttp.WinHttpRequest.5.1")
request.SetTimeouts(5000, 5000, 10000, 20000)
request.SetProxy(2, "proxy.example.net:8080", "localhost")
request.Open("GET", "https://example.net/status", false)
request.Send()
MsgBox request.Status " " request.StatusText

Το 2 επιλέγει τη δεδομένη διαμόρφωση διαμεσολαβητή. Για τον δημόσιο έλεγχο HTTPS που φαίνεται, η λίστα διαμεσολαβητών HTTP παρέχει υποψήφιες τιμές κεντρικού υπολογιστή και θύρας για τον ενδιάμεσο, όταν επιτρέπονται δημόσιες διαδρομές και δεν έχει ρυθμιστεί διαπιστευτήριο διαμεσολαβητή. Το προαιρετικό τρίτο όρισμα είναι η λίστα παράκαμψης· εδώ το localhost πηγαίνει απευθείας.

Το τελικό false στο Open επιλέγει σύγχρονο αίτημα. Αυτό το μικρό σενάριο περιμένει την ολοκλήρωση πριν διαβάσει την κατάσταση. Μια μακροχρόνια αυτοματοποίηση επιφάνειας εργασίας πρέπει να συνυπολογίζει αυτή την αναμονή στη ροή αλληλεπίδρασής της.

Αν ο διαμεσολαβητής απαιτεί διαπιστευτήρια, ορίστε τα μετά το Open και πριν το Send:

request.SetCredentials(proxyUser, proxyPassword, 1)

Η εφαρμογή παρέχει αυτές τις δύο μεταβλητές. Η τελική σημαία 1 επιλέγει διαπιστευτήρια διαμεσολαβητή. Η σημαία 0 επιλέγει διαπιστευτήρια για τον διακομιστή προορισμού.

Μετά από επιτυχή απάντηση κειμένου, το request.ResponseText περιέχει το κείμενο που επιστράφηκε. Για δυαδική λήψη χρησιμοποιήστε το ResponseBody και κατάλληλη διαδρομή δυαδικής εγγραφής, αντί να περνάτε αυτά τα byte μέσα από μετατροπή κειμένου.

Σχετικά άρθρα