Как я могу создать кнопку с HTML на файл символьной ссылки в Perl? - PullRequest
0 голосов
/ 07 октября 2019

Я сталкиваюсь с проблемой в Perl. Я работаю над сценарием, на самом деле инструментом символической ссылки, поэтому я попытался создать кнопку с именем символической ссылки для символической ссылки файла / etc / passwd, так как я вызываю, но они вместе

$target="/etc/passwd";
$distension ="1.txt";

$symlink = symlink($target,$distension);

if($symlink == 1) {print " distension symlink created successfully";}

else {print "cannot symlink File $distension Already Exists ";}

<button value="" name="symlink" type="button"
onclick="alert('symlink created successfully ^_^')">symlink</button>

Итак, что я хочу, так это когда я нажимаю кнопку символической ссылки, что произойдет, и извините за мой английский

1 Ответ

2 голосов
/ 07 октября 2019

Программа Perl должна запускаться на веб-сервере или в качестве веб-сервера. Пример:

app.psgi

#!/usr/bin/env plackup
use strict;
use warnings;
use Plack::Request qw();
use HTTP::Status qw(
    HTTP_OK HTTP_METHOD_NOT_ALLOWED HTTP_INTERNAL_SERVER_ERROR
);

my $app = sub {
    my ($env) = @_;
    my $req = Plack::Request->new($env);
    if ('POST' eq $req->method) {
        my $target = '/etc/passwd';
        my $distension = '1.txt';
        if (symlink $target, $distension) {
            return $req->new_response(
                HTTP_OK, ['Content-Type' => 'text/plain'], [
                    'distension symlink created successfully'
                ]
            )->finalize;
            print ;
        } else {
            return $req->new_response(
                HTTP_INTERNAL_SERVER_ERROR, ['Content-Type' => 'text/plain'], [
                    "could not symlink <$target> to <$distension>: $!"
                ]
            )->finalize;
        }
    } else {
        return $req->new_response(HTTP_METHOD_NOT_ALLOWED)->finalize;
    }
};

HTML-форма должна вызывать POST-запрос к веб-серверу.

<form method="POST" action="http://localhost:5000">
    <input type="submit" value="create symlink">
</form>
...