Bazı proxy ürünleri sonraki proxy istekleri için bir tanımlama bilgisi veya belirteç sağlayan bir oturum açma akışı tanımlar. Bu belirtecin CONNECT üzerinde görünmesi gerekiyorsa, tünel içindeki web sitesi için amaçlanan tanımlama bilgilerinden ayrı tutun.

libcurl, proxy için ayrı bir özel başlık listesi sunar. Zaten başlatılmış bir C uygulamasında yapılandırma parçası şöyle görünebilir:

struct curl_slist *proxy_headers = NULL;
proxy_headers = curl_slist_append(proxy_headers,
    "Cookie: ProxySession=REPLACE_WITH_PROXY_TOKEN");
curl_easy_setopt(handle, CURLOPT_PROXYHEADER, proxy_headers);
curl_easy_setopt(handle, CURLOPT_HEADEROPT,
                 (long) CURLHEADER_SEPARATE);

Bu yalnızca proxy'nin belgelenmiş oturum açma protokolü bu başlığı gerektirdiğinde uygundur. Çevredeki kodda ayırma ve seçenek sonuçlarını kontrol edin, aktarım tamamlanana kadar listeyi koruyun, ardından listeyi serbest bırakmadan önce tanıtıcının işaretçisini temizleyin veya değiştirin.

Başlıklar ayrı işlendiğinde libcurl, proxy listesini CONNECT üzerinde ve hedef listesini kurulan tünelin içindeki istekte gönderir. Böylece proxy, satıcının belirtecini alır ancak bu belirteç web sitesi tanımlama bilgisine dönüşmez. Bu ayrım libcurl 7.42.1'den beri varsayılandır; açık seçenek amaçlanan davranışı görünür kılar.

Tarayıcı tanımlama bilgisi kavanozu başka bir mekanizmadır

libcurl'ün tanımlama bilgisi motorunu etkinleştirmek veya hedef için bir tanımlama bilgisi ayarlamak, bir tarayıcının kendine özgü proxy oturum açma akışını otomatik olarak yeniden üretmez. CONNECT, hedefle HTTPS alışverişinden önce gerçekleşir. Yakalanan site tanımlama bilgisini her isteğe kopyalamak yerine ürünün gerçek gereksinimlerini belirleyin.

Proxy standart HTTP proxy kimlik doğrulaması kullanıyorsa bunun yerine libcurl'ün proxy kimlik bilgilerini ve desteklenen kimlik doğrulama seçeneklerini kullanın. Proxy-Authenticate içeren 407, oturum belirteci döndüren bir HTML oturum açma sayfasından farklı bir protokoldür.

Belirteci proxy uç noktası ve amaçlanan ömrüyle sınırlı tutun. Başka bir aracıya geçerken başlık listesini bu yapılandırma değişikliğinin parçası olarak değiştirin. Genel bir istek başlığı listesi yalnızca tek bir proxy'ye ait bir sır için kötü bir yerdir.

İlgili makaleler