【发布时间】:2014-07-08 12:58:42
【问题描述】:
我有一个简单的 HTML 表单:
<form name="UForm" id="UForm" enctype="multipart/form-data" method="post" action="http://localhost:8080/crcJurisUploadFile">
Select a file 1: <input type="file" name="FileToUpload1" />
<input type="submit" name="btUpload" id="btUpload" value="Upload" />
</form>
我尝试使用如下所示的代码读取上传的文件。我的结果告诉我 Request.Files.Count = 0。无论我尝试上传什么类型的文件,计数都是 0。
为什么?
我有一个简单的 DataSnap/WebBroker 设置。 WebModule 包括
procedure TWM.WebModule3DefaultHandlerAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
...
else if SameText(Request.InternalPathInfo, '/crcJurisUploadFile')
then Response.Content := dm.UploadFile(Request)
...
end;
并调用
function TDM.UploadFile(TheRequest : TWebRequest): string;
var
i : integer;
HoldStr : string;
begin
HoldStr := 'Content-Type=' + TheRequest.ContentType + '<br />'
+ 'Content-Encoding=' + TheRequest.ContentEncoding + '<br />'
+ 'User-Agent=' + TheRequest.UserAgent + '<br />'
+ 'File-Count=' + IntToStr(TheRequest.Files.Count) + '<br />' + '<br />';
result := '<html><head /><body>'
+ '<h2>Request.Files</h2>';
result := result + '<p>' + HoldStr + '</p>';
result := result + '</body></html>';
end;
响应显示
请求.文件
内容类型=多部分/表单数据;边界=-------------291141107813480 内容编码= 用户代理=Mozilla/5.0 (Windows NT 6.1; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0 文件数=0
为什么文件计数为 0?
【问题讨论】:
标签: html httprequest datasnap input-type-file