Un câmp de diagnostic din răspunsul CONNECT al proxy-ului aparține unui alt răspuns decât răspunsul ulterior al site-ului. Un obiect de răspuns de destinație de nivel înalt poate expune doar pe cel din urmă.

Interfață de transportUnde apar metadatele CONNECT
API standard de conexiune HTTP al Python, 3.12+get_proxy_response_headers() returnează anteturile răspunsului CONNECT, sau None când CONNECT nu a fost trimis.
Colectarea anteturilor în libcurlAnteturile CONNECT pot fi incluse. CURLOPT_SUPPRESS_CONNECT_HEADERS controlează livrarea lor prin căile de ieșire a anteturilor relevante.

Pentru handlerul cURL al Guzzle, capturați fiecare bloc de răspuns cu on_headers în loc să vă uitați doar la răspunsul returnat. Folosiți interfața acceptată a clientului care face efectiv cererea. O bibliotecă construită peste Python nu expune neapărat metoda de conexiune în răspunsul său, iar o instanță de conexiune separată nu poate dezvălui acest schimb. Suprimarea anteturilor CONNECT ale libcurl poate simplifica un parser, dar ascunde dovada de care are nevoie diagnosticul.

Dacă câmpul lipsește în continuare, verificați condițiile documentate de produs, metodă și rezultat ale operatorului. O cerere transmisă în text simplu și un tunel HTTPS opac pot expune metadatele diferit; un câmp de furnizor nu este o parte obligatorie a fiecărui răspuns.

Păstrați definiția câmpului împreună cu valoarea sa. Un IP returnat poate descrie ascultătorul, legătura locală, ieșirea aleasă sau destinația. Doar forma sa nu identifică sursa văzută de site.

Articole similare