delphi 之 get post
没测试过这个
var
Source: TMemoryStream;
Response: TStringStream ;
begin
try
// Set the properties for HTTP
idHTTP.Request.Username := 'www ';
idHTTP.Request.Password := 'www ';
// idHTTP1.Request.ProxyServer := '11.133.190.13 ';
// idHTTP1.Request.ProxyPort := StrToIntDef( '80 ', 80);
idHTTP.Request.ContentType := 'application/x-www-form-urlencoded ';
Response := TStringStream.Create( ' ');
try
Source := TMemoryStream.Create;
try
Source.LoadFromFile( 'unsub.xml '); //发送这个XML包,反向取消请求
idHTTP.Post( 'http://222.333.444.555/dsmp/dsmp.wsdl ', Source, Response);
finally
// Source.Free;
end; memo.Lines.Text := Response.DataString;//返回的字串,可以把它存为XML就可以
memo.Lines.SaveToFile( 'unsubresp.xml '); //返回的反向取消应答包
finally
Response.Free;
end;
finally
end
这个方法试了 可以用
以下仅供参考,要求在web页面写特殊的字符,根据返回的结果判断是否登陆成功,用户名,密码方式见下:
procedure TForm1.Button1Click(Sender: TObject);
var
Url: string;
Response : TStringStream;
Request : TStrings;
begin
Memo1.Clear;
Response := TStringStream.Create( ' ');
try
Request := TStringList.Create;
try
Request.Append( 'txtUserId=hengli&txtPassword=ysj);
url := 'http://192.168.1.33/nmmis/index.aspx ';
IdHTTP1.Request.ContentType := 'application/x-www-form-urlencoded ';
IdHTTP1.Post(Url, Request, Response);
Memo1.Lines.Text := Response.DataString;
finally
FreeAndNil(Request);
end;
finally
FreeAndNil(Response);
end;
end;
通过idhttp上传文件到web上,然后返回上传的文件路径。
function UpLoagFile(FileName: String): string;
var
obj : TIdMultiPartFormDataStream;
Url: String;
begin
obj := TIdMultiPartFormDataStream.Create;
try
obj.AddFile( 'Image ',FileName, GetMIMETypeFromFile(FileName));
http.Request.ContentType := obj.RequestContentType;
obj.Position := 0;
Url := 'http://192.168.1.44/insertImage.aspx ';
Result := http.Post(Url, obj);
finally
obj.Free;
end;
end; 服务端,C#:
private void Page_Load(object sender, System.EventArgs e)
{
foreach(string f in Request.Files.AllKeys)
{
string fileName, fullName;
HttpPostedFile postFile = Request.Files[f];
if (postFile.ContentLength > 10)
{
fileName = postFile.FileName;
//GetFileName( fileName, out fullName );
fullName = "UpLoad/aaa.jpg "
postFile.SaveAs ( Server.MapPath ( fullName ) );
Response.Write (fullName);
}
}
}
delphi 之 get post的更多相关文章
- 学习笔记:7z在delphi的应用
最近做个发邮件的功能,需要将日志文件通过邮件发送回来用于分析,但是日志文件可能会超级大,测算下来一天可能会有800M的大小.所以压缩是不可避免了,delphi中的默认压缩算法整了半天不太好使,就看了看 ...
- delphi连接sql存储过程
针对返回结果为参数的 一. 先建立自己的存储过程 ALTER PROCEDURE [dbo].[REName] ) AS BEGIN select ROW_NUMBER() over(order by ...
- delphi 2010与delphi XE破解版的冲突
在系统中同时安装了Dephi 2010LITE版与Delphi XE lite后,总是会有一个有问题 是因为两者都是读取C:\ProgramData\Embarcadero目录下的license文件, ...
- [Delphi] Delphi版本号对照
VER300 Delphi Seattle / C++Builder Seattle 23 230 (Delphi:Win32/Win64/OSX/iOS32/iOS64/An ...
- delphi tidhttp 超时设置无效的解决方法
现在delphi都发布到xe8了,tidhttp还有缺陷,那就是超时设置在没有网络或者连不上服务器的时候是无效的,不管你设置为多少都要10-20秒.connectTimeout和readTimeout ...
- Delphi Code Editor 之 编辑器选项
Delphi Code Editor 之 编辑器选项 可从Code Editor的右键菜单中选择“Properties”菜单项来查看编辑器选项.也可以从主菜单[Tools | Editor Optio ...
- Delphi使用ADO进行数据库编程
Delphi是一个可视化的编程工具,ADO编程也是这样,所以话不多言,直接通过代码.截图和语言来说明. 我的数据库是Oracle,为了测试,先建一个表:create table practice(un ...
- 怎么使用Delphi获取当前的时间,精确到毫秒
先介绍一个可能比较常用的方法,获取当前时间 var datetime: string; begin datetime:= FormatDateTime('yyyy-mm-dd hh:mm:ss', N ...
- Delphi在创建和使用DLL的时候如果使用到string,请引入ShareMem单元
当使用了长字符串类型的参数.变量时,如string,要引用ShareMem. 虽然Delphi中的string功能很强大,但若是您编写的Dll文件要供其它编程语言调用时,最好使用PChar类型.如果您 ...
- Delphi控件之---通过编码学习TStringGrid(也会涉及到Panel控件,还有对Object Inspector的控件Events的介绍
我是参考了万一的博客里面的关于TStringGrid学习的教程,但是我也结合自己的实际操作和理解,加入了一些个人的补充,至少对我有用! 学用TStringGrid之——ColCount.RowCoun ...
随机推荐
- [Web 前端] 005 html 常用标签补充
少废话,上例子 1. 正常的字 <br> <tt>小一点的字体</tt> <br> <small>变小</small> < ...
- [Markdown] 04 进阶语法 第二弹
[TOC] 接上一篇 [Mardkown] 03 进阶语法 第一弹 8. LaTeX 8.1 相关介绍 TeX:学术排版 LaTeX:相当于 TeX 的简化版本:对公式编辑精细至像素级别 MathJa ...
- Spring Boot 中的 Tomcat 是如何启动的?
作者:木木匠 https://my.oschina.net/luozhou/blog/3088908 我们知道 Spring Boot 给我们带来了一个全新的开发体验,让我们可以直接把 Web 程序打 ...
- 8、神经网络:表述(Neural Networks: Representation)
8.1 非线性假设 我们之前学的,无论是线性回归还是逻辑回归都有这样一个缺点,即:当特征太多时,计算的负荷会非常大. 下面是一个例子: 当我们使用x1, x2 的多次项式进行预测时,我们可以应用的很好 ...
- 03-CSS颜色、文本、字体、边框、背景
# Css颜色,文本字体 ## css颜色表示法1.颜色名表示,比如:red 红色,gold 金色 2.16进制数值表示,比如:#ff0000 表示红色,这种可以简写成 #f00 3.RGB颜色: 红 ...
- js的事件流理解
面试问到js的事件流,当时说的不是很清楚,现在觉得有必要把这个弄清楚. 事件捕获和事件冒泡 事件流描述的是从页面中接收事件的顺序,也可理解为事件在页面中传播的顺序. 事件流主要分为两种,即事件捕获和事 ...
- JavaScript基础9——操作DOM树
appendChild()方法:添加子节点到末尾 类似于剪切粘贴的效果 insertBefore(newNode, oldNode)方法:在某个节点之前插入一个节点 newNode为要插入的节点, ...
- 定时器,定时发邮件JavaMail
一.定时器用法: 1.1先导入jar包 <!--spring整合其他文件时要用的jar包--> <dependency> <groupId>org.springfr ...
- 【记录】git error:bad signature 解决方法
今天提交git 的时候出现 bad signature 错误,意思是git下的index文件损坏了,需要重新生成下 error: bad signature fatal: index file cor ...
- 阿里P7前端需要哪些技能
原谅我copy过来的,但是这个条理很清楚很有借鉴意义 前言 以下是从公众号的文章中获取到的一位阿里的前端架构师整理的前端架构p7的技能图谱,当然不是最完整.最系统的,所以之后我会一直维护更新这里的内容 ...