Πού θα βρείτε τις κεφαλίδες απόκρισης CONNECT ενός διαμεσολαβητή
Εξετάστε την ανταλλαγή CONNECT όταν λείπει ένα διαγνωστικό πεδίο ειδικό για τον διαμεσολαβητή από το αντικείμενο απόκρισης προορισμού.
Ένα διαγνωστικό πεδίο στην απόκριση CONNECT του διαμεσολαβητή ανήκει σε διαφορετική απόκριση από τη μεταγενέστερη απόκριση του ιστότοπου. Ένα αντικείμενο απόκρισης προορισμού υψηλού επιπέδου μπορεί να εκθέτει μόνο τη δεύτερη.
| Διεπαφή μεταφοράς | Πού εμφανίζονται τα μεταδεδομένα CONNECT |
|---|---|
| Τυπικό API σύνδεσης HTTP της Python, 3.12+ | get_proxy_response_headers() επιστρέφει τις κεφαλίδες απόκρισης CONNECT, ή None όταν δεν στάλθηκε CONNECT. |
| Συλλογή κεφαλίδων του libcurl | Οι κεφαλίδες CONNECT μπορούν να συμπεριληφθούν. CURLOPT_SUPPRESS_CONNECT_HEADERS ελέγχει την παράδοσή τους μέσω των σχετικών διαδρομών εξόδου κεφαλίδων. |
Για τον χειριστή cURL του Guzzle, καταγράψτε κάθε μπλοκ απόκρισης με on_headers αντί να κοιτάτε μόνο την απόκριση που επιστρέφεται. Χρησιμοποιήστε τη υποστηριζόμενη διεπαφή του πελάτη που εκτελεί πραγματικά το αίτημα. Μια βιβλιοθήκη χτισμένη πάνω στην Python δεν εκθέτει κατ' ανάγκη τη μέθοδο σύνδεσης στην απόκρισή της, και ένα ξεχωριστό στιγμιότυπο σύνδεσης δεν μπορεί να αποκαλύψει αυτή την ανταλλαγή. Η καταστολή των κεφαλίδων CONNECT του libcurl μπορεί να απλοποιήσει έναν αναλυτή, αλλά κρύβει το στοιχείο που χρειάζεται η διάγνωση.
Αν το πεδίο εξακολουθεί να λείπει, ελέγξτε τις τεκμηριωμένες συνθήκες προϊόντος, μεθόδου και αποτελέσματος του παρόχου. Ένα αίτημα που προωθείται σε απλό κείμενο και μια αδιαφανής σήραγγα HTTPS μπορούν να εκθέσουν τα μεταδεδομένα διαφορετικά· ένα πεδίο προμηθευτή δεν είναι υποχρεωτικό μέρος κάθε απόκρισης.
Κρατήστε τον ορισμό του πεδίου μαζί με την τιμή του. Μια IP που επιστρέφεται μπορεί να περιγράφει τον ακροατή, την τοπική σύνδεση, την επιλεγμένη έξοδο ή τον προορισμό. Το σχήμα της μόνο δεν προσδιορίζει την πηγή που βλέπει ο ιστότοπος.