Գոյություն ունեցող libcurl բռնակի համար բացահայտորեն առանձնացրեք նպատակակետի և պրոքսի վերնագրերի ցանկերը՝

curl_easy_setopt(handle, CURLOPT_HEADEROPT, (long)CURLHEADER_SEPARATE);
curl_easy_setopt(handle, CURLOPT_PROXYHEADER, proxy_headers);
curl_easy_setopt(handle, CURLOPT_HTTPHEADER, origin_headers);

Փոխանցման ընթացքում կենդանի պահեք կարգավորված բռնակը և վավեր ցանկերը։ CURLHEADER_SEPARATE տարբերում է CONNECT-ում օգտագործվող վերնագրերը նպատակակետի հարցման համար օգտագործվող վերնագրերից։ Հին միասնական քաղաքականության օրինակները կարող են սովորական ցանկը դնել երկու փոխանակումներում էլ։

Հարցման ուղիԱռանձին ցանկերի իմաստը
HTTPS սովորական CONNECT թունելի ներսումՍկզբում գալիս է պրոքսի փոխանակումը, ապա նպատակակետի HTTP վերնագրերը հաջորդում են նպատակակետի TLS-ի ներսում։
Սովորական HTTP փոխանցումՊրոքսը կարող է կարդալ նպատակակետի վերնագրերը, և libcurl-ը կարող է օգտագործել երկու համապատասխան ցանկերն էլ մեկ փոխանցված հարցման մեջ։

Միայն պրոքսիին պատկանող երթուղային նշիչը տեղ ունի պրոքսի փոխանակման մեջ։ Բաց տեքստով փոխանցման դեպքում կամայական հարմարեցված դաշտը կարող է հասնել սկզբնաղբյուրին, եթե փոխանցման կարգավորումը չկառավարի այն. տարբերակի անվանումը գաղտնիության երաշխիք չէ։

Նույնականացման համար օգտագործեք աջակցվող հավատարմագրերի տարբերակներ։ Օպերատորի սահմանած մետատվյալների համար պարզեք, թե որ թռիչքն է սպառում դրանք և արդյոք դրանք կարող են փոխանցվել՝ ընդհանուր դաշտում գաղտնաբառ դնելու փոխարեն։

Երբ նշիչը բացակայում է կամ թվում է, թե արտահոսում է, նույնականացրեք այն պարունակող իրական հարցումը։ Մի քանի փոխանակում ցուցադրող վերնագրի հետկանչը կարող է ճիշտ առանձնացված ցանկերը խառնված թվալ։

Առնչվող հոդվածներ