4

フォームからアップロードを取得し、処理のために別のスクリプトに渡す小さな PSGI アプリがあります。

#!/usr/bin/perl

use strict;
use warnings;

use Plack::Request;
use HTTPStatusCode;

my $app = sub {
    my $req = Plack::Request->new(shift);

    my $content;
    if (keys %{$req->uploads}) {
        $content = do_something_with_upload($req);
    } else {
        $content = display_form();
    }

    return [
        HTTPStatusCode->SUCCESS,
        [ 'Content-type', 'text/html' ],
        [ $content ],
    ];
};

ファイルは のように正常にアップロードされます/tmp/Fw8n6j0ICn.txt。問題は、処理がアップロード時の名前のファイルに依存していることです。

ファイルのアップロード方法を変更して に移動することはできます/tmp/Fw8n6j0ICn/original_name.txtか?

4

1 に答える 1

4

filenameオブジェクトのメソッドを介して元のファイル名を取得できるため、$request基本的に、$request->path必要なものにコピーしてそのファイルを処理できます。

于 2012-09-30T01:30:56.740 に答える