Ծրագրի գոյություն ունեցող libcurl սկզբնավորման և easy-handle կյանքի ցիկլի ներսում՝

curl_easy_setopt(handle, CURLOPT_URL, "https://example.com/");
curl_easy_setopt(handle, CURLOPT_PROXY, "127.0.0.1:1080");
curl_easy_setopt(handle, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME);
curl_easy_setopt(handle, CURLOPT_NOPROXY, "");
curl_easy_setopt(handle, CURLOPT_CONNECTTIMEOUT, 5L);
curl_easy_setopt(handle, CURLOPT_TIMEOUT, 15L);

CURLPROXY_SOCKS5_HOSTNAME ուղարկում է նպատակակետի հոսթի անունը SOCKS ուղով։ CURLPROXY_SOCKS5 փոխարենը լուծում է այն հաճախորդի վրա, որը կարող է օգտագործել այլ ցանցի DNS տեսքը։ libcurl օգտագործող C++ HTTP հաճախորդը կարիք չունի սեփական SOCKS ձեռքսեղմման միայն այս ուղին ընտրելու համար։ Թույլատրված հանրային վերջնակետի համար՝ SOCKS5 վստահված անցուղիների ցանկը առաջարկում է հոսթի և պորտի թեկնածուներ՝ փոխարինելու պատկերազարդ loopback լսողին։

Դատարկ CURLOPT_NOPROXY արժեքը վստահված անցուղու թեստը դարձնում է դիտավորյալ։ Պահպանեք նախատեսված շրջանցումները՝ այն ծրագրի սովորական քաղաքականությանը հարմարեցնելիս։ Այս ընտրանքները ազդում են այս բռնակի վրա. գործընթացի այլ գրադարաններ և սոկետներ դրանք չեն ժառանգում։

Ստուգեք ընտրանքների սահմանման և փոխանցման վերադարձվող արժեքները ծրագրի սխալների մշակման միջոցով։ SOCKS-ին հասնելու կամ նրա հետ բանակցելու ձախողումը կարող է տեղի ունենալ ցանկացած HTTP պատասխանից առաջ, ուստի այն կայքի կարգավիճակի կոդ չի տալիս։

Պահանջվող վստահված անցուղու հավատարմագրերն օգտագործում են աջակցվող վստահված անցուղու նույնականացման կարգավորումները և գաղտնիքների մեխանիզմը՝ կայք մուտք գործելուց առանձին։ Թողեք TLS ստուգումը միացված. SOCKS-ի միջոցով կապի բացումը չի հաստատում HTTPS ծառայության ինքնությունը։

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