Здравствуйте, дамы и господа! В настоящее время я пишу минималистичный чат-сервер, который будет несколько напоминать IRC. Я пишу его в perl, используя Mojolicious, но, к сожалению, столкнулся с проблемой. У меня есть следующий код:Асинхронный чат-сервер с использованием Mojolicious
#!/usr/bin/perl
use warnings;
use strict;
use Mojo::IOLoop::Server;
my $server = Mojo::IOLoop::Server->new;
$server->on(accept => sub {
my ($server, $handle) = @_;
my $data;
print $handle "Connected!\n";
while(1) {
$handle->recv($data, 4096);
if($data) {
print $server "$data";
}
}
});
$server->listen(port => $ARGV[0]);
$server->start;
$server->reactor->start unless $server->reactor->is_running;
К сожалению, print $ server «$ data»; линия фактически не работает. Он отдает ошибку:
Mojo::Reactor::Poll: I/O watcher failed: Not a GLOB reference at ./server.pl line 20.
Я просмотрел документацию для Mojolicious, но не могу найти, как послать линию я получаю от клиента А до остальных подключенных клиентов.
, что харизмы версию вы используете? – sotona
6.56 Клинковые пивные кружки выглядят как – DTSCode