Delphi的idhttp报IOHandler value is not valid错误的原因
出现这种问题的原因是由于访问的 URL地址为https或存在其跳转地址为https。
首先单纯使用idhttp是只能访问http,而https则需要搭配IdSSLIOHandlerSocketOpenSSL来实现对https的访问支持,当然还需要在系统目录或编译目标程序的同目录下有ssleay32.dll与libeay32.dll两个SLL协议的支持库。
下面贴出一个简单示例,但对于需要管理cookie的自然要继续完善idhttp的其他项设置,尤其是有些https站是屏蔽直接使用IdCookieManager的。
function TMyHttp.SSLGetS(URL: string): string;
var
Http: TIdhttp;
SSLIO: TIdSSLIOHandlerSocketOpenSSL;
begin
Http := TIdHttp.Create(nil);
Http.ProtocolVersion := pv1_1;
Http.HandleRedirects := True;
SSLIO := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
SSLIO.SSLOptions.Method:=sslvTLSv1;
SSLIO.SSLOptions.Mode := sslmClient;
try
try
Http.IOHandler:=SSLIO;
Result := Http.Get(URL);
except
Result := '';
end;
except end;
Http.Disconnect;
FreeAndNil(SSLIO);
FreeAndNil(Http);
end;
我使用的是Delphi 2007,它最高仅支持Indy10.2.3版本,搭配前面提到的两个OpenSLL Shared Library 1.0.1.5(1.0.1.e)版本文件。
Delphi的idhttp报IOHandler value is not valid错误的原因的更多相关文章
- Delphi的idhttp报IOHandler value is not valid错误的原因[转]
出现这种问题的原因是由于访问的 URL地址为https或存在其跳转地址为https. 首先单纯使用idhttp是只能访问http,而https则需要搭配IdSSLIOHandlerSocketOpen ...
- Delphi的idhttp报508 Loop Detected错误的原因
一般是访问https时才出现“508 Loop Detected”,idhttp+IdSSLIOHandlerSocketOpenSSL,这个在上篇文章中讲过了. 由于该问题网上资料极少,连外文资料也 ...
- [delphi]indy idhttp post方法
网易 博客 LOFTCam-用心创造滤镜 LOFTER-最美图片社交APP 送20张免费照片冲印 > 注册登录 加关注 techiepc的博客 万事如意 首页 日志 LOFTER 相册 音乐 ...
- Delphi Indy IDHttp 403 forbidden
http://hbk777.blog.163.com/blog/static/6058086200681594333361/ Delphi Indy IDHttp 403 forbidden 2006 ...
- delphi http 403 获取不到服务器返回的错误消息 用浏览器打开url可以返回
用delphi的idhttp Get一个url如下: http://117.135.237.4:9090/agent/api/treatmentModeUpdate?userName=VDAwMIMQ ...
- maven报错非法字符:\65279 错误
开发中一个项目很早就报这个错,maven报错非法字符:\65279 错误,今天终于忍无可忍要解决它 :编译java文件的时候,有些java文件报非法字符 \65279错误,在网上找和很多 方法,也试了 ...
- 安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误
安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误 这个错误几个月以前解决过一次,但是到又碰到的时候,竟然完全忘记当时怎么解决的了, 看来上了年纪记忆真是越来越不行了... 解决方案很简单 ...
- ArcGIS Server注册地理数据库报machine:机器名[Oracle:(null)]错误的修改
环境介绍:本机安装了ArcGIS Server10.2,ArcGIS Desktop10.2,64位Oracle11g以及Oracle32位客户端.直连和服务连接都能成功. 问题:我要进行服务发布的时 ...
- 转:maven报错非法字符:\65279 错误
开发中一个项目很早就报这个错,maven报错非法字符:\65279 错误,今天终于忍无可忍要解决它 :编译java文件的时候,有些java文件报非法字符 \65279错误,在网上找和很多 方法,也试了 ...
随机推荐
- EventBus 3.0源码解析
现在网上讲解EventBus的文章大多数都是针对2.x版本的,比较老旧,本篇文章希望可以给大家在新版本上面带来帮助. EventBus 是专门为Android设计的用于订阅,发布总线的库,用到这个库的 ...
- 定制选择范围的按钮RangeButton
定制选择范围的按钮RangeButton 效果: 源码: RangeButton.h 与 RangeButton.m // // RangeButton.h // PulsingView // // ...
- web开发方面会遇到哪些缓存?分别如何优化
Web缓存定义: Web缓存游走于服务器和客户端之间,这个服务器可能是源服务器(资源所驻留的服务器Add),数量可能是1个或多个. Web缓存就在服务器-客户端之间搞监控,监控请求,并且把请求输出的内 ...
- HTML5 JS 实现浏览器全屏(F11的效果)
项目中有需要使用JS来控制浏览器全屏的方法 DEMO地址: http://zhongxia245.github.io/demo/js2fullpanel.html function fullScree ...
- 【问题记录】uwsgi部署并启动俩个几乎一样的python flask web app,发现有一个app响应时间非常长
uwsgi在同一台linux上启动python flask web app(俩个), 发现第一个和第二个的简单性能测试差距非常大,差了将近一倍: 第一个结果: Concurrency Level: 1 ...
- 嵌套的ng-repeat双层循环,内层如何获取外层的$index?
html代码: <div> <ul ng-repeat="row in table track by $index"> <li ng-repeat=& ...
- R语言常用语法和用法
数据准备 height <- c(6.00, 5.92, 5.58, 5.92) 1 计算均值 mean(height) [1] 5.855 2 计算中位数 median(height) [1] ...
- Anaconda 安装和使用
最近看了些关于数据分析的书,想系统的整理下相关知识,算是学习笔记吧,也希望能帮到初学者. 1.Anaconda介绍 安装python的方法有很多种,数据分析方面比较常用Anaconda.Anacond ...
- 2938: [Poi2000]病毒
Description 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码 ...
- haproxy 启动错误
在haproxy启动时会报错 ALERT] / () : Starting proxy short_message: cannot bind socket 问题1,如果bind的是vip,则需要内核添 ...