- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 Delphi 作为服务器来服务许多不同的请求。所有这些简单的字符串都可以正常工作,但我在接收文件时遇到了一些问题。
所有这些都是使用网络代理服务实现的,所以我得到了一个方法
WebModule1WebActionItem1Action(Sender: TObject; Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
我有一个/test 方法,类型为 mtPost。
在操作中,我执行以下操作:
MimeType := Request.ContentFields.Values['MimeType'];
for i := 0 to Request.Files.Count-1 do begin
// never entered
aFile := Request.Files.Items[i];
ms := TMemoryStream.Create;
aFile.Stream.Position := 0;
ms.CopyFrom(aFile.Stream, aFile.Stream.Size);
ms.SaveToFile(path+aFile.FileName);
ms.free;
end;
显然我发送的任何内容都不会被识别为文件,但我不知道为什么。用于发布的 HTML 如下所示:
<form id="myForm" action="http://localhost:8080/test" method="post" enctype="multipart/form-data">
<input type="file" size="60" name="myfile">
<input type="text" size="10" name="mimetype" value="image/hest">
<input type="submit" value="upload">
</form>
如果有人告诉我可能出了什么问题以及如何解决它,我会很感激。基本上我只需要能够同时接收 1 个文件,包括 mimetype(因为我需要在稍后提供文件时返回它)
最佳答案
我也遇到了同样的问题,花了很长时间才找到答案。默认情况下,TWebRequest 不处理多部分表单。在您的项目中包含 ReqMulti 单元,它将被扩展以支持多部分,并且突然 Request.Files 对象将在其中实际包含数据。
顺便说一句,一旦您使用多部分表单,Request.GetFieldByName 似乎不再起作用,但 Request.ContentFields.Values['fieldname'] 可以。
关于delphi - Delphi中从TWebRequest获取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19974266/
是否可以转储 TWebRequest(和 TWebResponse)对象的所有 header 字段?目前,我使用 GetFieldByName() 并使用 Writeln() 打印它们,但这仅在我已经
我已经在 Delphi 中基于 TWebModule 创建了一个 ISAPI 项目。 我想使用 Delphi TestFramework 对处理的操作进行单元测试。 输入是 TWebRequest 和
TWebRequest 有两个方法用于检索客户端 IP 地址: 远程IP 远程地址 来自docs of RemoteIP : Specifies the IP of the remote target
摘要:如何访问原文TWebRequest Delphi Soap Server 应用程序中的对象? 我的 Web 服务使用方法 CallMe 发布服务 ITest: ITest = interface
我是一名优秀的程序员,十分优秀!