首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在MozRepl/RemoteObject.pm连接到

无法在MozRepl/RemoteObject.pm连接到
EN

Stack Overflow用户
提问于 2016-01-03 14:03:08
回答 1查看 340关注 0票数 1

尝试设置WWW::Mechanize::Firefox并使用Perl访问Firefox。

我已经安装了模块及其依赖项。我不确定我是否正确理解了这个模块,但我正在unix (共享)服务器上运行它,以访问和驱动运行在pc客户端上的Firefox。

我收到一个错误:

代码语言:javascript
复制
Failed to connect to ,  at MozRepl/RemoteObject.pm at line...

我已经阅读了各种关于在RemoteObject.pm中设置远程访问的文章,并尝试了所有的方法。仍然会出现错误。现在我有一个小测试程序(http://kamasiri.com/kohkood/cgi-bin/testMechanize.cgi),它基本上如下所示:

代码语言:javascript
复制
#!/usr/bin/perl

use CGI;
use CGI::Carp qw(warningsToBrowser fatalsToBrowser); 
use WWW::Mechanize::Firefox;

print "Content-type: text/html\n\n";

my $mech = WWW::Mechanize::Firefox->new();
$mech->get('http://kamasiri.com');

$mech->eval_in_page('alert("Hello Firefox")');
print "<html><body><p>yeehah!</p></body></html>";

exit;

在RemoteObject.pm中,我在顶部附近进行了如下编辑:

代码语言:javascript
复制
# use $ENV{MOZREPL} or localhost:4242
my $remote_machine = $ENV{REMOTE_ADDR};
$ENV{REMOTE_ADDR} = "$remote_machine:4242";
my $repl = MozRepl::RemoteObject->install_bridge(
  repl => "$ENV{REMOTE_ADDR}"
);

我是不是做错了什么?

我还尝试将PC客户端的IP地址硬编码到代码中。仍然是同样的错误。

火狐正在运行,MozRepl插件已经加载并运行(据我所知,这是导致这个错误的正常原因)。

我想知道这是不是防火墙的问题,所以我尝试了各种机器,包括手机。还是老样子。事实上,它没有打印出错误消息中的ip地址和端口,这表明它没有将这些作为选项正确地放入程序中。

我还想知道这是否是telnet权限问题,因为我在共享服务器上?

你知道我下一步该怎么做吗?

EN

回答 1

Stack Overflow用户

发布于 2016-01-03 16:24:02

从您的代码看,您最初的问题似乎是您没有使用您想要使用的服务器来初始化WWW::Mechanize::Firefox。您已经创建了另一个名为RemoteObject.pm的文件,但您似乎没有使用它。

要初始化对象,您应该在主perl文件中执行如下操作:

代码语言:javascript
复制
my $remote_machine = $ENV{REMOTE_ADDR};
my $mech = WWW::Mechanize::Firefox->new( repl => "$remote_machine:4242" );

请注意,这将尝试连接到您用来浏览的计算机。你说你试过用你的手机。你的手机上有没有带MozRepl插件的火狐浏览器?

在RemoteObjects.pm中,不需要将值重新设置为REMOTE_ADDR环境变量。

防火墙和套接字权限仍然存在问题,但现在您至少可以尝试连接到正确的计算机。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34573849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档