6

WWW :: Mechanizeのドキュメントから読み取れる限り、次のようにして文字列からファイルを送信できます。

$mech->submit_form(
    fields => {
        'UploadedFile' => [[ undef, 'test2.txt', Content => $content ], 1],
    }
);

これにより、 (この場合は)text2.txtのテキストを含む名前のファイルが送信されます。$content'The file is a lie.'

ただし、リクエストは内部サーバーエラーで失敗したため、送信されたリクエストを調べたところ、次のことがわかりました。

--xYzZY
Content-Disposition: form-data; name="UploadedFile"; filename="ARRAY(0x9567570)"

The file is a lie.
--xYzZY

それは明らかに私が指定したファイル名ではないので、私は疑問に思います:私は何か間違ったことをしているのですか、それともモジュールにバグがありますか?

4

1 に答える 1

2

これはHTML::Formのバグです。著者に報告しました。

それまでの間、HTML :: Formバージョン6.00を使用している場合は、HTML/Form.pmの1442行目をコメントアウトすることで一時的に修正できます。

$old = $self->file unless defined $old;
于 2011-10-04T12:19:21.863 に答える