我知道您可以在WebProxy中使用Socks5代理。话虽如此,我想要做的是:
使用HttpWebRequest打开TCPListener -> Create request使用HttpWebRequest.Proxy ->向TCPListener发送请求使用TCPListener中的NetworkStream或Socket,然后通过连接到远程Socks5代理的socket转发请求->返回响应。
我使用Socket.Receive();从使用TCPClient接受的套接字中读取字节,然后将它们写入连接到Socks5代理服务器的套接字。当我的请求只是普通的HTTP请求时,这很有效。我似乎在请求SSL页面时遇到了问题。它们不会返回响应。有没有什么是我遗漏的,或者甚至是更简单的方法?在这一点上,我甚至可以考虑使用socks5代理发送Http请求的库。
发布于 2011-12-20 06:48:55
你实际上是在进行中间人攻击。HttpWebRequest无法验证您的SSL证书检查,并且不接受连接(也就是它知道发生了一些可疑的事情)。
如果您真的需要这样做(并了解其后果),您可以尝试使用this来绕过SSL检查。
https://stackoverflow.com/questions/6673094
复制相似问题