我正在尝试将我的 .NET 应用程序配置为使用代理。我的源代码是 C#,但我通过 C++ 学习了 CURL。我的问题是我将 SOCK 的 IP 和端口放在哪里?我浏览了文档并没有看到它。我相信这就是造成我这些问题的原因。
当我运行此代码时,它会安静地超时并且不会调用我的标头函数或编写器函数。如果我注释掉前两个 curlopt 行(两个代理行)我的代码运行没有问题。
在 Firefox 中,我分别设置了 http 代理和 SOCKs 主机,它们是不同的 IP 和端口。我如何设置袜子部分,下面有虚拟代理设置,但我无法弄清楚袜子部分。
static void Main(string[] args)
{
SeasideResearch.LibCurlNet.Curl.GlobalInit((int)SeasideResearch.LibCurlNet.CURLinitFlag.CURL_GLOBAL_ALL);
var curl = new Easy();
{
curl.SetOpt(CURLoption.CURLOPT_PROXY, "http://127.0.0.1:1234");
curl.SetOpt(CURLoption.CURLOPT_PROXYTYPE, CURLproxyType.CURLPROXY_SOCKS5);
curl.SetOpt(CURLoption.CURLOPT_URL, "http://whatismyipaddress.com/ip-lookup");
curl.SetOpt(CURLoption.CURLOPT_FOLLOWLOCATION, 1);
curl.SetOpt(CURLoption.CURLOPT_USERAGENT, @"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2b5) Gecko/20091204 Firefox/3.6b5");
curl.SetOpt(CURLoption.CURLOPT_HEADERFUNCTION, hf);
curl.SetOpt(CURLoption.CURLOPT_HEADERDATA, data);
curl.SetOpt(CURLoption.CURLOPT_WRITEFUNCTION, wf);
curl.SetOpt(CURLoption.CURLOPT_WRITEDATA, sw);
curl.SetOpt(CURLoption.CURLOPT_SSL_VERIFYPEER, 0);
curl.Perform();
var sz = sw.ToString();
var myrealip = sz.IndexOf("12.34.56.78") !=-1;
}
//Console.WriteLine(sz);
SeasideResearch.LibCurlNet.Curl.GlobalCleanup();
}