delphi idhttpserver 服务器
【冒泡】lazarus(964489899) 10:01:27
哥 能复制成 字符串吗?
|
【冒泡】lazarus(964489899) 10:01:44
我想快速输入一下
![]() ![]() |
【传说】CHINY(19730622) 10:01:52
LocalDoc:=HtmlDirectory +ARequestInfo.Document ;
if FileExists(LocalDoc) then //文件存在 begin if AnsiSameText(ARequestInfo.Command, 'HEAD') then begin ResultFile := TFileStream.create(LocalDoc, fmOpenRead or fmShareDenyWrite); try AResponseInfo.ResponseNo := 200; AResponseInfo.ContentType := GetMIMEType(LocalDoc); AResponseInfo.ContentLength := ResultFile.Size; finally ResultFile.Free; end; end else begin {如果ContentDisposition 为空,自己加上attachment: filename="index.html"; 客户端就会作为附件来下载,而不是显示} AResponseInfo.ContentDisposition:=Format('inline: filename="%s"',[ExtractFileName(LocalDoc)]); AResponseInfo.ResponseNo := 200; if LowerCase(ExtractFileExt(LocalDoc))='.js' then AResponseInfo.ContentType:='application/x-javascript' else AResponseInfo.ContentType :=GetMIMEType(LocalDoc); //提交发送文档的MIMEType AResponseInfo.ServeFile(AContext, LocalDoc); end; end else //未找到文档,返回错误 begin AResponseInfo.ContentText := 'Error Params or Bad Key'; end; end; |
【传说】CHINY(19730622) 10:02:12
AResponseInfo.ContentType := GetMIMEType(LocalDoc);
主要是这句,文件类型 |
【冒泡】lazarus(964489899) 10:02:28
![]() |
【活跃】山东日照远宏<15906335806> 10:08:34
如果真为了手机传文件的话,你这真的就是把简单的事情给复杂化了
|
【活跃】山东日照远宏<15906335806> 10:08:41
如果有其它用途,不表
|
【冒泡】lazarus(964489899) 10:11:17
有其他用途啊。 比如自己搞个服务器,自己上传下载文件 多方便 。 两个电脑可以互传文件
|
【传说】CHINY(19730622) 10:11:47
传文件还是FTP吧
|
【冒泡】lazarus(964489899) 10:12:33
恩恩
|
【冒泡】lazarus(964489899) 10:12:55
我百度了一下 大部分 文件类型都有。 rar 文件的 类型我没找到。
|
【冒泡】lazarus(964489899) 10:13:01
先试一下 图片吧
|
【传说】CHINY(19730622) 10:16:02
看下
TIdMimeTable 对象 Id组件自带的 |
【传说】CHINY(19730622) 10:16:15
GetFileMIMEType
|
【冒泡】lazarus(964489899) 10:17:33
恩恩 。
|
【活跃】山东日照远宏<15906335806> 10:18:10
application/x-rar-compressed
|
【冒泡】lazarus(964489899) 10:18:18
我刚才试了 pdf 类型。 手机打开网页 直接下载文件 后缀 是htm pc 是正常的
|
【冒泡】lazarus(964489899) 10:19:43
|
【冒泡】lazarus(964489899) 10:19:54
@山东日照远宏 谢谢老师
|
【冒泡】lazarus(964489899) 10:20:34
@CHINY 老师 我的代码 有问题吗? 手机下载就是不行。 下载完毕 后缀一直是htm
|
【传说】CHINY(19730622) 10:21:28
这个不能照抄
|
【冒泡】lazarus(964489899) 10:22:05
这个 要去掉? 还是改成其他形式
|
【活跃】山东日照远宏<15906335806> 10:23:00
判断文件格式,设置输出文件类型
|
【活跃】山东日照远宏<15906335806> 10:23:11
通过扩展名
|
【传说】CHINY(19730622) 10:23:21
|
【冒泡】lazarus(964489899) 10:23:47
我再试试
|
【冒泡】lazarus(964489899) 10:44:37
好了。 解决了 ,就是文件类型的问题。 。 另外是手机浏览器太烂的问题。 换了个浏览器就啥问题都没有。
|
【冒泡】lazarus(964489899) 10:44:45
谢谢 老师
|
delphi idhttpserver 服务器的更多相关文章
- 如何解析DELPHI XE5服务器返回的JSON数据(翻译)及中文乱码
<span style="font-size:14px;">一直想找如何解析JSON数据的说,今天终于找到有人发帖子了.之前有人说用superobject,Tlkjso ...
- Delphi idHttpServer接收Http Get请求解码问题
引用 Httpapp单元,使用Httpdecode函数进行解码 procedure TFrmMain.HTTPServerCommandGet(AThread: TIdPeerThread; AReq ...
- Delphi XE5 常见问题解答
Delphi XE5 常见问题解答 有关于新即时试用的问题吗?请看看 RAD Studio 即时试用常见问答. 常见问题 什么是 Delphi? Embarcadero? Delphi? XE5 是易 ...
- Delphi 的知识体系
第一部分 快速开发的基础 第1章 Delphi 5下的Windows编程 1 1.1 Delphi产品家族 1 1.2 Delphi是什么 3 1.2.1 可视化开 ...
- Delphi经验总结(1)
先人的DELPHI基础开发技巧 ◇[DELPHI]网络邻居复制文件 uses shellapi; copyfile(pchar('newfile.txt'),pchar('//computername ...
- Delphi 2010初体验,是时候抛弃Delphi 7了
Delphi 2010已于近日由Embarcadero公司发布.作者Kim Madsen作为一名资深的Delphi开发者,在他的博客中谈到了Delphi 2010的新性能.它的使用感受以及对Delph ...
- Delphi 2010
Delphi 2010已早由Embarcadero公司发布.作者Kim Madsen作为一名资深的Delphi开发者,在他的博客中谈到了Delphi 2010的新性能.它的使用感受以及对Delphi语 ...
- [转]Delphi 控件属性和事件
常用[属性] Action:该属性是与组件关联的行为,允许应用程序集中响应用户命令 Anchors:与组件连接的窗体的位置点 Align:确定组件的对齐方式 AutoSize:确定组件是否自动调整其大 ...
- Delphi XE2有什么新功能
具体内容见PDF Delphi XE2有什么新功能Delphi XE2提供(offers)了令人兴奋(exciting)的新功能,让您能够建立高度可视化的,在Windows,Mac和iOS上的业务应用 ...
随机推荐
- [Web 前端] 018 css 清除浮动的四种方法
清除浮动的四种方法 加 clear: ...(见例1) 父级上增加属性 overflow:hidden(见例2.1) 在最后一个子元素的后面加一个空的 div,给它一个样式属性 clear: both ...
- Maven-maven插件(1)添加主类信息到MANIFEST.MF
1.以前面的HelloWorld项目为例,在pom.xml中添加如下代码,指定插件 <build> <plugins> <plugin> <groupId&g ...
- SCAU 2015 GDCPC team_training0
A.题目:http://acm.timus.ru/problem.aspx?space=1&num=2024 题意:求一个包含K个不同字符的集合的最大长度,还有组成这个长度的集合的个数 做法: ...
- VirtualStringTree常用类和属性
重要的类:TBaseVirtualTree = class(TCustomControl)TCustomVirtualStringTree = class(TBaseVirtualTree)TVirt ...
- V8引擎回收机制、 内存泄露
一.垃圾回收:将内存不在使用的数据进行清理,释放内存空间 v8将内存分为新生代空间和老生代的空间 新生代空间:用于存活较短的对象 :又分为二个空间:from空间和to空间 :Scav ...
- jQuery学习总结01-选择器
下面简单介绍一个常用的jQuery使用方法,其他详细的猛戳这里 一.选择器 1.parent > child 说明:在给定父类的情况下匹配所有的子类 示例: 描述:匹配表单中所有的的子级inpu ...
- 学Python的第四天
第四天啦,今天依旧代码少的啃树皮.... 但是作业留的有了幼儿园的水准!!!让小编我看到了希望.... #!/usr/bin/env python # -*- coding:utf8 -*- impo ...
- 一、模型验证CoreWebApi 管道方式(非过滤器处理)
一.新建.Net Core的MVC项目添加WebApi控制器的方式 using System; using System.Collections.Generic; using System.Linq; ...
- python面向对象--类的内置方法
#isinstance(obj,cls)判断obj是否是类cls的实例 #issubclass(cls,cls1)判断cls是否是cls1的子类或派生类 class Foo: pass class B ...
- Debug to add expression
Debug expression