使用perl用户代理的套接字连接
我有一个脚本,它使用以下代码连接到服务器使用perl用户代理的套接字连接,perl,proxy,websocket,Perl,Proxy,Websocket,我有一个脚本,它使用以下代码连接到服务器 $sock = new IO::Socket::INET ( PeerAddr => $server, PeerPort => $port, Proto => 'tcp',
$sock = new IO::Socket::INET (
PeerAddr => $server,
PeerPort => $port,
Proto => 'tcp',
);
但是,我在代理服务器后面,无法使用此脚本。为了克服这个问题,我必须添加代理支持。关于SO的建议是使用UserAgent
。由于我是一名Perl文盲,我不知道如何用使用UserAgent
的代码替换此代码。我不想触及代码的其余部分。我可以使用UserAgent
重新定义$sock
,以便脚本可以工作文件。我所说的脚本是可用的我不确定您指的是什么“用户代理”模块。没有名为该的模块。有许多模块的名称中包含UserAgent,但我不知道有哪一个模块适用于您的情况
不管怎样,我想你在找我。我自己从未尝试过,但你应该能够做到:
use IO::Socket::Socks;
my $sock = IO::Socket::Socks->new(
ProxyAddr => $hostname_of_your_proxy,
ProxyPort => $port_number_your_proxy_listens_on,
ConnectAddr => $server,
ConnectPort => $port,
);
剩下的代码保持原样。我不确定您指的是什么“用户代理”模块。没有名为该的模块。有许多模块的名称中包含UserAgent,但我不知道有哪一个模块适用于您的情况
不管怎样,我想你在找我。我自己从未尝试过,但你应该能够做到:
use IO::Socket::Socks;
my $sock = IO::Socket::Socks->new(
ProxyAddr => $hostname_of_your_proxy,
ProxyPort => $port_number_your_proxy_listens_on,
ConnectAddr => $server,
ConnectPort => $port,
);
剩下的代码保持原样。我猜你指的是什么?但是从HTTP服务器远程获取一些文件(因为这个LWP::UserAgent实际上更相关)和通过IO::Socket(::INET)提交文件之间有区别,就像在您链接的脚本中一样 您可以使用cjm提供的优秀解决方案,也可以仅使用以下解决方案:
socat TCP4-LISTEN:9999 TCP4:moss.stanford.edu:7690
…其中9999表示本地代理端口。好处:你不必改变莫斯的剧本;坏消息:你必须首先安装soc。我猜你指的是什么?但是从HTTP服务器远程获取一些文件(因为这个LWP::UserAgent实际上更相关)和通过IO::Socket(::INET)提交文件之间有区别,就像在您链接的脚本中一样 您可以使用cjm提供的优秀解决方案,也可以仅使用以下解决方案:
socat TCP4-LISTEN:9999 TCP4:moss.stanford.edu:7690
…其中9999表示本地代理端口。好处:你不必改变莫斯的剧本;坏处:你必须先安装socat。你说得对;这可能就是他所说的讨论。但是LWP::UserAgent对于这个目的是无用的,因为他所说的脚本使用的是自定义协议,而不是HTTP或LWP实现的任何其他协议。是的。这是我读到的讨论。我应该提一下。谢谢你。这个周末我会试试。你说得对;这可能就是他所说的讨论。但是LWP::UserAgent对于这个目的是无用的,因为他所说的脚本使用的是自定义协议,而不是HTTP或LWP实现的任何其他协议。是的。这是我读到的讨论。我应该提一下。谢谢你。这个周末我会试试。我需要担心代理身份验证的用户名和密码吗?另外,ping命令不会从moss.stanford.edu获得任何响应。当我运行您的解决方案时,它会显示
无法连接到服务器moss.stanford.edu:非法搜索
如果您的代理需要身份验证,那么是的,您还需要提供用户名
和密码
属性(可能还需要身份验证类型
,我不确定).我是否需要担心代理身份验证的用户名和密码?另外,ping命令不会从moss.stanford.edu获得任何响应。当我运行您的解决方案时,它会显示无法连接到服务器moss.stanford.edu:非法搜索
如果您的代理需要身份验证,那么是的,您还需要提供用户名
和密码
属性(可能还需要身份验证类型
,我不确定).嘿,你现在有什么解决办法吗?嘿,你现在有什么解决办法吗?