0

入力パラメータを perl cgi に渡す方法を知りたいです。私はフレックスアプリケーションを持っています。それは人の名前とその他の詳細を受け取ります。次に、これらの詳細を入力としてperl cgiを呼び出したいと思います。それはどのように可能ですか?URL の最後にパラメータを追加していますか? たとえばhttp://localhost/cgi-bin/test.pl?name=abc&location=adsas、パラメータを perl cgi に渡す唯一の方法ですか?

perl cgi内で渡されたパラメータを取得するにはどうすればよいですか?

このコードを試しましたが、出力が得られませんでした

use CGI qw(:standard);
use strict;
my $query = new CGI;
my $name = $query->param('name');
my $loc = $query->param('loc');
print "$name is from $loc\n"; 
4

1 に答える 1

1

クライアント (Flex) は関係ありません。サーバーに何が送信されても​​、クエリ文字列はクエリ文字列であり、投稿データは投稿データです。

Dancer を使用している場合は、Plack を使用しています。CGI が関係している場合、Plack がそれを処理し、すべての環境変数を Dancer が消費する標準の Plack インターフェースに変換します。

CGI 環境変数に直接アクセスすることはできません (CGI.pm にもアクセスできません)。

ドキュメントから:

get '/foo' => sub {
    request->params; # request, params parsed as a hash ref
    request->body; # returns the request body, unparsed
    request->path; # the path requested by the client
    # ...
};

したがって:

my $params = request->params;
my $name = $params->{'name'};
my $loc = $params->{'loc'};
于 2012-11-29T11:20:43.993 に答える