0
点赞
收藏
分享

微信扫一扫

C++隧道模式代码示例

  1. ​#include​
  2. ​#include​
  3. ​#include​
  4. ​#include​​​​"curl/curl.h"​
  5. ​using​​​​namespace std;​
  6. ​static​​​​size_t​​​​WriteMemoryCallback(void* ptr,​​​​size_t size,​​​​size_t nmemb,​​​​void* stream)​​​​{​
  7. ​size_t nsize = size * nmemb;​
  8. ​string* strdata =​​​​(string*)stream;​
  9. ​if​​​​(strdata)​
  10. ​strdata->append((const​​​​char*)ptr, nsize);​
  11. ​return nsize;​
  12. ​}​
  13. ​void​​​​Proxy(string& resp)​​​​{​
  14. ​CURL* curl = curl_easy_init();​
  15. ​CURLcode res;​
  16. ​if​​​​(curl)​​​​{​
  17. ​curl_easy_setopt(curl, CURLOPT_URL,​​​​"https://ip.hahado.cn/ip");​
  18. ​curl_easy_setopt(curl, CURLOPT_PROXY,​​​​"http://219.151.125.106:31615");​
  19. ​//代理IP地址和端口号​
  20. ​curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD,​​​​"895314XY:24D6YB309ZCB");​
  21. ​//代理IP的AuthKey和AuthPwd​
  22. ​curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION,​​​​WriteMemoryCallback);​
  23. ​curl_easy_setopt(curl, CURLOPT_WRITEDATA,​​​​&resp);​
  24. ​res = curl_easy_perform(curl);​
  25. ​curl_easy_cleanup(curl);​
  26. ​if​​​​(res != CURLE_OK)​​​​{​
  27. ​fprintf(stderr,​​​​"request failed: %s\n", curl_easy_strerror(res));​
  28. ​}​
  29. ​}​
  30. ​}​
  31. ​int main()​
  32. ​{​
  33. ​string response;​
  34. ​Proxy(response);​
  35. ​cout << response << endl;​
  36. ​return​​​​0;​
  37. ​}​

C++隧道模式代码示例_ip地址

举报

相关推荐

0 条评论