C/C++ 代理接入文档
学习如何使用C/C++的libcurl库接入718Proxy代理服务
代理配置信息
// 动态住宅代理 / 5G移动代理通用配置
const char *proxy_host = "resi.718proxy.com";
int proxy_port = 5001;
const char *proxy_username = "您的账号";
const char *proxy_password = "您的密码";代码示例
C/C++
// 使用 libcurl 接入718Proxy代理
#include <stdio.h>
#include <curl/curl.h>
// 回调函数处理响应
size_t write_callback(void *contents, size_t size, size_t nmemb, void *userp) {
size_t realsize = size * nmemb;
printf("%.*s", (int)realsize, (char *)contents);
return realsize;
}
int main(void) {
CURL *curl;
CURLcode res;
// 代理配置
const char *proxy_host = "resi.718proxy.com";
int proxy_port = 5001;
const char *proxy_username = "您的账号";
const char *proxy_password = "您的密码";
// 构建代理URL
char proxy_url[256];
snprintf(proxy_url, sizeof(proxy_url),
"http://%s:%s@%s:%d",
proxy_username, proxy_password, proxy_host, proxy_port);
// 初始化curl
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if(curl) {
// 设置测试URL
curl_easy_setopt(curl, CURLOPT_URL, "https://httpbin.org/ip");
// 设置代理
curl_easy_setopt(curl, CURLOPT_PROXY, proxy_url);
// 设置User-Agent
curl_easy_setopt(curl, CURLOPT_USERAGENT,
"Mozilla/5.0 (Windows NT 10.0; Win64; x64)");
// 设置回调函数
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
// 设置超时
curl_easy_setopt(curl, CURLOPT_TIMEOUT, 10L);
// 执行请求
res = curl_easy_perform(curl);
// 检查错误
if(res != CURLE_OK) {
fprintf(stderr, "请求失败: %s\n", curl_easy_strerror(res));
} else {
long http_code = 0;
curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &http_code);
printf("\n状态码: %ld\n", http_code);
}
// 清理
curl_easy_cleanup(curl);
}
curl_global_cleanup();
return 0;
}