『壹』 怎样用delphi6.0 的TIDHTTP 控件上传文件,再用asp程序接受
TIDHTTP控件是用来模拟网络信息收发的,可以通过截取网络上的发送信息,然后再设置到 IdHttp 的相关数据中,以下是示例:
procereTForm1.Button1Click(Sender:TObject);
var
responseStream:TStringStream;
mpfSource:TIdMultiPartFormDataStream;
begin
mpfSource:=TIdMultiPartFormDataStream.Create;
responseStream:=TStringStream.Create('');
try
IdHTTP1.Request.ContentType:=mpfSource.RequestContentType;
mpfSource.AddFormField('var1','1111111111111111');
mpfSource.AddFormField('var2','2222222222222222');
mpfSource.AddFile('userfile','c:a.doc','file');
mpfSource.PrepareStreamForDispatch;
mpfSource.Position:=0;
IdHTTP1.Post('http://serwer/test.asp',mpfSource,responseStream);
finally
mpfSource.free;
responseStream.free;
end;
end;
『贰』 如何使用WinInet的API来发送一个HTTP POST请求在Delphi-delphi
你可以用wininetapi来获得源网页的内容,用wpe之类的截包软件分析提交过程的数据包,再自己用wininetapi发送同样的数据包给服务器即可。不过如没有必要的话,见意采用Twebbrowser组件来做并更加简单.api方式可以搜索用wininetapipost数据相关资料。
『叁』 delphi 中,实现客户端与服务器的连接,请问有多少种方法
如果 到底层协议上
大约有
tcp/ip
udp
http 这三种
但是实际应用中 不会从底层协议上开始写 而是用封装过的中间层
比如ro,midas,datasnap
『肆』 asp如何实现文件上传功能
基本原理是:采用ADO Stream对象的BinaryRead方法将FORM中的所有数据读出,从中截取出所需的文件数据,以二进制文件方式存盘。
下面是上传文件页面的一个例子:
<html>
<body>
<form name="Upload" Method="Post" Enctype="multipart/form-data" Action="Upload.asp">
<input type="file" name="FileName">
<INPUT TYPE="Submit" VALUE="Upload"></TD>
</form>
</body>
</html>
(4)http上传文件delphi扩展阅读
几种文件上传技术的比较
1、基于HTTP协议
该方法需要编程者利用第三方软件,如DELPHI、VB等,在应用程序中先进行HTTP协议编程,然后将待上传文件内容按HTTP协议的格式打包,最后向WEB服务器发送上传的请求报文,从而实现文件的上传。
因为DELPHI和VB不能编写完整的WEB网络程序,只能编写WEB小应用程序,因此,该方法只用于功能受限的网络应用。
2、基于VB(或DELPHI等)开发的文件上传组件
该方法利用VB(或DELPHI等编程语言)开发ASP服务器组件,实现特定的文件上传服务。它首先利用ASP表单功能将文件(二进制格式)从用户端上传到服务器端,然后使用VB开发的组件,对二进制文件进行处理,成为可以正常读写的文件。
该方法要求编程者不仅掌握ASP语言,而且还能利用VB等第三方语言进行组件编程,增加了开发的难度。
3、基于数据库技术
该方法和上个方法有类似之处。不同的地方在于对上传的二进制文件的处理上。它使用数据库来保存二进制文件。无论是小型数据库还是大型数据库都提供了存储二进制数据的数据类型,只要以Append Chunk方式将数据存入相应的字段就可以了。
该方法虽然简单可行,但是因为每次上传的文件大小都是不一样的,因此,会对数据库的空间造成很大的浪费,降低了数据的访问速度;并且使得文件只能在数据库环境下进行访问,造成了很大的不便。