を使用して hunchentoot で単一のファイルのアップロードを処理する方法を知っていますhunchentoot:post-parameter
が、プロパティを追加するとmultiple
、つまり<input name="file" type="file" multiple="multiple"/>
. 私は(hunchentoot:post-parameter "file")
そのうちの1つだけを手に入れました。ユーザーが選択したすべてのファイルを受信するメカニズムはありますか?
質問する
792 次
2 に答える
7
Hunchentoot API では、アップロードされた複数のファイルに直接アクセスすることはできませんが(hunchentoot:post-parameters *request*)
、すべての POST パラメーター (アップロードされたファイルを含む) のリストを取得するために使用できます。これは連想リストになり、標準の連想リスト手法 (例: ) を使用して、アップロードされたすべてのファイルのリストを取得できます(remove "file" (hunchentoot:post-parameters hunchentoot:*request*) :test (complement #'equal) :key #'car)
。
于 2013-03-06T21:48:40.013 に答える
2
これは、hunchentoot ではかなり単純なタスクです。<input>
と を含む html要素があると仮定するname="files"
とmulti="true"
、次のように「ファイル」入力に関連付けられたすべてのファイルにアクセスできます。
(loop for post-parameter in (hunchentoot:post-parameters*)
if (equal (car post-parameter) "files")
collect post-parameter))
これにより、名前「files」に関連付けられたアップロードされたファイルの数と一致する長さのリストが得られます。各要素は、次のようなリストになります。
("files" #P"/temporary/file1" "name of file" "file type")
詳細については、十分に文書化されたリファレンスを参照してください。
于 2016-09-10T19:08:14.783 に答える