TNetHttpClient 和 TIdHttp 是delphi常用的两个web通讯控件。idhttp很早就有了,nethttpclient随着delphi xe8才出现。 经过简单使用,对他们的一些异同进行介绍。 1.nethttpclient支持阻塞和异步模式,idhttp仅支持阻塞模式 2.nethttpclient基本可以直接替换idhttp,改动很少。 3.nethttpclient可以直接支持https无需带dll,idhttp需要openssl的几个dll支持才能访问https。 4.nethttpclient使用操作系统的ssl库,所以支持的ssl版本会受到操作系统的影响,idhttp相对可控。 5.在实际使用当中感觉nethttpclient的初次连接速度比idhttp要快一些。 注意:在windows xp下nethttpclient需要设置仅使用ssl3方能正常访问https(经连接百度测试,其他网站没试),设置代码如下 if sametext(TOSVersion.Name,'Windows XP') then nethttpclient1.SecureProtocols:= [THTTPSecureProtocol.ssl3]; idhttp在xp下可能需要使用低版本的ssl库,实测一些高版本的ssl不支持xp系统。 |
东风夜放花千树 浙ICP备19024182号-2 浙公网安备 33078202001030号
GMT+8, 2024-12-22 14:13 , Processed in 0.040354 second(s), 15 queries .
Powered X3.4
© 2001-2017