Node.js中这两个模块的目的和区别是什么?一个人依赖另一个吗?
在我的脚本中引用第二行到最后一行。出于某种原因,Perl 无法访问该变量$perlPort,我该如何解决这个问题?注意:$perlPort是我的 perl 脚本之前的 bash 变量位置
perl -e '
{
package MyWebServer;
use HTTP::Server::Simple::CGI;
use base qw(HTTP::Server::Simple::CGI);
my %dispatch = (
"/" => \&resp_hello,
);
sub handle_request {
my $self = shift;
my $cgi = shift;
my $path = $cgi->path_info();
my $handler = $dispatch{$path};
if (ref($handler) eq "CODE") {
print "HTTP/1.0 200 OK\r\n";
$handler->($cgi);
} else {
print "HTTP/1.0 404 Not found\r\n";
print $cgi->header,
$cgi->start_html("Not found"),
$cgi->h1("Not found"),
$cgi->end_html;
}
}
sub resp_hello {
my $cgi …Run Code Online (Sandbox Code Playgroud) 如下面的代码所示,我使用apache来服务我的Perl Web服务器.我需要Perl为我的客户端提供多条路由,如图所示my %dispatch.如果我找到一个,我肯定其余的会非常相似.如果我们查看我的子例程sub resp_index,如何修改它以链接到我的root:目录中的index.html文件/var/www/perl?
/var/www/perl/perlServer.pl:
#!/usr/bin/perl
{
package MyWebServer;
use HTTP::Server::Simple::CGI;
use base qw(HTTP::Server::Simple::CGI);
my %dispatch = (
'/index.html' => \&resp_index,
# ...
);
sub handle_request {
my $self = shift;
my $cgi = shift;
my $path = $cgi->path_info();
my $handler = $dispatch{$path};
if (ref($handler) eq "CODE") {
print "HTTP/1.0 200 OK\r\n";
$handler->($cgi);
} else {
print "HTTP/1.0 404 Not found\r\n";
print $cgi->header,
$cgi->start_html('Not found'),
$cgi->h1('Not found'),
$cgi->end_html;
}
}
sub …Run Code Online (Sandbox Code Playgroud) perl ×2
apache ×1
bash ×1
centos7 ×1
file-io ×1
node-modules ×1
node.js ×1
path ×1
url-routing ×1
webserver ×1