如何解决如何将 TIdWhois 与 SOCKS 代理一起使用
我正在使用此代码获取 whois 信息:
IdWhois1.Host := 'whois.nic.tld';
ServerResultStr := IdWhois1.WhoIs('google.tld');
但我需要使用 SOCKS 代理服务器查询 whois 服务器(端口 43)。
我使用的是 Delphi 10.3.3。有没有办法通过使用 TIdWhois 来实现这一点?
解决方法
SOCKS 在 Indy 中使用 TIdSocksInfo
组件处理。您可以根据需要使用代理详细信息(主机、端口、版本、身份验证等)对其进行配置。
要使 TIdWhois
(或任何 TCP 客户端)通过 TIdSocksInfo
连接到其目标服务器,您需要执行以下操作:
-
将
TIdIOHandlerSocket
派生组件(TIdIOHandlerStack
,或任何TIdSSLIOHandlerSocketBase
派生组件,如TIdSSLIOHandlerSocketOpenSSL
)分配给TIdWhois.IOHandler
属性。 -
将
TIdSocksInfo
分配给IOHandler
的TransparentProxy
属性。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。