delphi XE8 NetHTTPRequest NetHTTPClient
delphi xe8 推出2个新http控件,NetHTTPRequest、NetHTTPClient
可以调用ASP.Net 一般应用程序获取网页数据,用旧的控件idhttp控件也可以,推荐用新的这2个组件。
http://localhost:52384/Handler1.ashx
procedure TForm5.Button1Click(Sender: TObject);
var
ss: TStringStream;
begin
ss := TStringStream.Create('', TEncoding.ASCII);//中文用UTF8
ss.Clear; self.NetHTTPClient1.Get(url, ss); self.Caption := ss.DataString; ss.Free; end;
procedure TForm5.Button2Click(Sender: TObject);
var
ss: TStringStream;
begin
ss := TStringStream.Create('', TEncoding.ASCII);
ss.Clear;
self.NetHTTPRequest1.Get(url);
self.Caption := ss.DataString;
ss.Free;
end;
http://docwiki.embarcadero.com/RADStudio/XE8/en/What's_New_in_Delphi_and_C%2B%2BBuilder_XE8
New HTTP Client API
The RTL provides several new network units with members that let you create an HTTP client, send requests to HTTP servers and handle their responses.
Using an HTTP Client explains how to use the two new HTTP components, TNetHTTPClient and TNetHTTPRequest, to handle HTTP requests. See also the main HTTP client classes:
- THTTPClient, that represents an HTTP client.
- THTTPRequest, that represents a request from your client to a server.
- THTTPResponse, that represents the server response to a request from your client.
THTTPClient
http://docwiki.embarcadero.com/Libraries/Berlin/en/System.Net.HttpClient.THTTPClient
OnReceiveData
example code
http://docwiki.embarcadero.com/CodeExamples/Berlin/en/RTL.HttpAsyncDownload_Sample
self.NetHTTPClient1.Get('www.sohu.com').ContentAsString(TEncoding.UTF8);
NetHTTPClient
var
url: string;
ss: tstringstream;
begin
url := Edit1.Text; ss := tstringstream.Create('', tencoding.UTF8);
ss.WriteString(Memo1.Text);
self.NetHTTPClient1.Accept := 'text/html, application/xhtml+xml, */*';
self.NetHTTPClient1.ContentType := 'application/x-www-form-urlencoded';//application/json
self.NetHTTPClient1.AcceptEncoding := 'UTF-8';
ss.Position := ;
Memo2.Text := self.NetHTTPClient1.Post(url, ss).ContentAsString(tencoding.UTF8); ss.Free;
end;
IdHTTP
self.IdHTTP1.Request.ContentType:='application/x-www-form-urlencoded';
self.IdHTTP1.Request.Accept:= 'text/html, application/xhtml+xml, */*';//application/json
self.Memo2.Text:=self.IdHTTP1.Post(url,ss);
NetHTTPRequest
self.NetHTTPRequest1.Accept := 'text/html, application/xhtml+xml, */*';
self.NetHTTPRequest1.url := self.Edit1.Text;
self.NetHTTPRequest1.MethodString := 'POST';
self.Memo2.Text := self.NetHTTPRequest1.Post(url, ss).ContentAsString(tencoding.UTF8);
post 多个参数
TStringList *ss;
ss = new TStringList();
ss->Add("PatientID=aaaaaaaaa");
ss->Add("PictuerName=BBBBBBBBBBB");
this->Caption = this->NetHTTPClient1->Post("http://127.0.0.1:8080/datasnap/rest/TServerMethods1/UpPic/", ss)->ContentAsString(TEncoding::ASCII);
delete ss;
delphi XE8 NetHTTPRequest NetHTTPClient的更多相关文章
- 咏南C/S开发框架支持最新的DELPHI XE8开发
特大好消息:咏南C/S开发框架支持最新的DELPHI XE8开发!咏南开发框架让你再无开发工具升级后顾之忧! 购买咏南开发框架送项目源码!
- Delphi xe8 FMX StringGrid根据内容自适应列宽。
Delphi xe8 FMX StringGrid根据内容自适应列宽. 网上的资料比较复杂,而且不是根据字体字号等设置列宽.故自己写了个function来用. function GetColMaxDa ...
- Delphi XE8帮助中的REST相关内容。
Delphi XE8的离线帮助是我见过的最好的Delphi帮助文档了,内容相当详细和丰富,几乎涵盖了Delphi的方方面面!! Delphi XE8的帮助文档在哪里?“XE8安装目录\Help\Doc ...
- Delphi XE8 TStyleBook的使用
Delphi XE8来了,FMX的性能有了巨大的提升,比如:XE7下ListBox上下滑动的卡顿已经不复存在,直接用xe8编译后,再上下划动ListBox,已经变的非常流畅.另外,也见到有网友说,通过 ...
- Delphi XE8中Delphi和JAVA数据类型对应关系!
Delphi XE8中Delphi和JAVA数据类型对应关系所在单元文件:Androidapi.JNI.JavaTypes 对应关系: JObject = interface;//java.lang. ...
- Delphi XE8中Android开发有用的资源!
一,FireMonkey Component Library在XE8帮助(topics.chm)中的位置:FireMonkey Component Library,展示了FireMonkey控件在VC ...
- Delphi XE8如何同Eclipse使用相同的Android SDK?
我的Android SDK是单独安装的:Eclipse也是最新版的,并不是谷歌提供的集成了SDK的那个Eclipse:Delphi XE8安装后,我并没有通过XE8里面下载Android SDK到XE ...
- DELPHI XE8 远程调试
最近公司项目遇到问题需要远程调试搜索了一下怎么用 发现网上能找到最新的是XE2上的说明现在已经有一些不同了 按照上面的方法不能调试成功 经过测试XE8的方法如下:1.项目编译设置:2.在被调试电脑上运 ...
- Delphi XE8中的DBExpress使用ODBC方式连接MySQL 5.6.24 X64!!!!
Delphi:XE2.XE8 MySQL:5.6.24 X64 今天准备做一个使用数据库的REST程序,最开始使用XE2,后来使用XE8,但是我遇到一个让我头疼的问题,就是无法连接我要使用的数据库,这 ...
随机推荐
- bzoj 1318 [SPOJ744] Longest Permutation (排列)
大意: 给定序列, 求选出一个长度为k的区间, 使得区间内的数为[1,k]的排列, 且要求k最大 这题好神啊. 每个排列有且仅有一个1, 我们按1将序列分成若干子问题来处理, 而每个位置最多属于两个子 ...
- 玲珑杯 round18 A 计算几何瞎暴力
题目链接 : http://www.ifrog.cc/acm/problem/1143 当时没看到坐标的数据范围= =看到讨论才意识到,不同的坐标最多只有1k多个,完全可以暴力做法,不过也要一些技巧. ...
- UVA-1153 Keep the Customer Satisfied (贪心)
题目大意:有n件工作,做每件工作的消耗时间为s,截止时间为d,问最多能做完几件工作. 题目分析:贪心策略:优先做截止时间靠前的,一旦做不完当前工作,则从已经做过的工作中删去一件耗时最长的,用当前工作取 ...
- MySql中Blob与Text的区别
BLOB是一个二进制大对象,可以容纳可变数量的数据.有4种BLOB类型:TINYBLOB.BLOB.MEDIUMBLOB和LONGBLOB.它们只是可容纳值的最大长度不同. 有4种TEXT类型:TIN ...
- 阿里云负载均衡配置https记录
配置前端协议是443,后端是80 问题1记录: 例如访问https://www.xxx.com,在后端服务器上面获取是http还是https请求协议实际上是http: 因为我们先请求负载均衡,负载均衡 ...
- 终于知道为什么我的mysql总是卸载的不干净以及老是找不到my.ini文件
感谢博主: http://blog.sina.com.cn/s/blog_6fc5bfa90100qmr9.html 如果你的电脑里装过MySQL,想再重新安装MySQL的时候可能就会因为前一版本卸载 ...
- 升级OPENSSH 和 OPENSSL
升级OPENSSH 和 OPENSSL 首先安装telnet服务,防止在操作过程中导致ssh远程中断 # 安装Telnetyum install telnet-server -y chkcon ...
- easyui api常用操作
一.FORM表单类 一.textbox validatebox 验证 1.验证规则:validType : 验证规则,类型STRING|ARRAY:1个规则就直接一个字符串,多个规则写在数组里 例如: ...
- BootStrap--scroll
滚动侦测 滚动侦测基本使用方法为: <body data-spy="scroll"> <nav class="navbar navbar-default ...
- 苹果iPhone 5C和5S发布后,消费者如何选择?
9月11日凌晨苹果新品发布会,笔者的朋友圈居然没有看直播的,真果粉太少了.笔者来阐述一些容易忽略的东西. iPhone5C和5S与5有什么不一样? 新品iPhone 5S 外观与iPhone5 相似度 ...