casperjs と phantomjs の両方のドキュメントを読んだ限りでは、直接ファイルを送信することは許可されていません。以下のように curl を使用できます。
curl http://some.testserver.com/post.php \
-F file_input=@/path/to/my/file.txt \
-F "text_field=Some Text Here" \
-F some_number=1234
ただし、 casperjsで POST リクエストを開くことはできます。
casper.start();
casper.open('http://some.testserver.com/post.php', {
method: 'post',
data: {
'title': 'Plop',
'body': 'Wow.'
},
headers: {
'Content-type': 'multipart/form-data'
}
});
casper.then(function() {
this.echo('POSTED it.');
});
casper.run();
関連するドキュメントは次のとおりです。
http://docs.casperjs.org/en/latest/modules/casper.html#open