CONNECT суроосунда прокси cookie файлын сактоо
Максаттык cookie файлын прокси аутентификациясы катары кароонун ордуна, жеткирүүчү аныктаган CONNECT кирүү үчүн libcurlдин өзүнчө прокси аталыштар интерфейсин колдонуңуз.
Айрым прокси продукттары кийинки прокси суроолору үчүн cookie же токен берүүчү кирүү агымын аныктайт. Эгер ал токен CONNECTте көрүнүшү керек болсо, аны туннелдин ичиндеги веб-сайт үчүн арналган cookie файлдарынан өзүнчө сактаңыз.
libcurl прокси үчүн атайын ыңгайлаштырылган аталыштар тизмесин сунуштайт. Мурунтан инициализацияланган C тиркемесинде конфигурация үзүндүсү мындай көрүнүшү мүмкүн:
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);Бул проксинин документтештирилген кирүү протоколу ошол аталышты талап кылганда гана ылайыктуу. Айлана-тегеректеги коддогу бөлүштүрүү жана опциялардын жыйынтыктарын текшериңиз, тизмени өткөрүү бүткөнгө чейин сактаңыз, анан тизмени бошотуудан мурун дескриптордун көрсөткүчүн тазалаңыз же алмаштырыңыз.
Аталыштарды өзүнчө иштетүү менен libcurl прокси тизмесин CONNECTте, ал эми максаттык тизмени түзүлгөн туннелдин ичиндеги суроодо жөнөтөт. Ошентип прокси жеткирүүчүнүн токенин алат, бирок ал токен веб-сайт cookie файлына айланбайт. Бул бөлүү libcurl 7.42.1ден бери демейки; ачык опция көздөлгөн жүрүм-турумду көрүнүктүү кылат.
Браузердин cookie кутусу — башка механизм
libcurlдин cookie кыймылдаткычын иштетүү же максат үчүн cookie коюу браузердин өздүк прокси кирүү агымын автоматтык түрдө кайра жаратпайт. CONNECT максат менен HTTPS алмашуудан мурун болот. Ар бир суроого кармалган сайт cookie файлын көчүрүүнүн ордуна продукттун чыныгы талаптарын аныктаңыз.
Эгер прокси стандарттык HTTP прокси аутентификациясын колдонсо, анын ордуна libcurlдин прокси эсеп дүмүрчөктөрүн жана колдоого алынган аутентификация опцияларын колдонуңуз. Proxy-Authenticate менен 407 сессия токенин кайтарган HTML кирүү баракчасынан башка протокол.
Токенди проксинин акыркы чекити жана көздөлгөн өмүрү менен чектеңиз. Башка ортомчуга өткөндө аталыштар тизмесин ошол конфигурация өзгөрүүсүнүн бөлүгү катары алмаштырыңыз. Жалпы суроо аталыштарынын тизмеси бир гана проксиге таандык сыр үчүн начар жер.