Я написал серверный модуль для использования JSON :: RPC :: Server и пытаюсь импортировать несколько пакетов (используя use
). Это код для файла Server.pl
:Использование нескольких пакетов в Perl для написания модуля API-сервера с использованием JSON :: RPC :: Server
#!/usr/bin/perl
use JSON::RPC::Server::Daemon;
use add2Num;
JSON::RPC::Server::Daemon->new(LocalPort => 42337)
->dispatch({'/jsonrpc/API' => 'add2Num'})
->handle();
И это работает отлично. Тем не менее, я хочу импортировать (use
) еще один файл, например, для вычитания. Я попытался переписывание серверного модуля 2 способами, как так:
#!/usr/bin/perl
use JSON::RPC::Server::Daemon;
use add2Num;
use sub2Num;
JSON::RPC::Server::Daemon->new(LocalPort => 42337)
->dispatch({'/jsonrpc/API' => 'add2Num'})
->dispatch({'/jsonrpc/API' => 'sub2Num'})
->handle();
и
#!/usr/bin/perl
use JSON::RPC::Server::Daemon;
use add2Num;
use sub2Num;
JSON::RPC::Server::Daemon->new(LocalPort => 42337)
->dispatch({'/jsonrpc/API' => 'add2Num', 'sub2Num'})
->handle();
Оба они дают мне «Procedure Error» при попытке получить доступ к функции вычитания, которая записывается в sub2Num
. Я следовал this link для синтаксиса dispatch
. Может кто-нибудь, пожалуйста, сообщите мне мою ошибку?
Я ничего не знаю об этом, но похоже, что вы говорите «запросы на отправку для/jsonrpc/API для add2Num и запросы для/jsonrpc/API для sub2Num», что не имеет смысла. – ikegami
@ikegami - это означает, что мне могут понадобиться отдельные URL-адреса для отдельных модулей? – rahuL