• IDHTTP-HTTPS通讯方法(Indy10.2.3之前仅支持OpenSSL的0.9.8以前的版本)


    加载https的站点页面内容的时候记得在窗体上加上“IdSSLIOHandlerSocketOpenSSL1”

    以及idhttp里面IOHandler为“IdSSLIOHandlerSocketOpenSSL1”

    不然老报“IOHandler value is not valid.”错误。


    dnspod API V2.0 就是用的https 用delphi开发客户 只需要用idhttp就可以post

    在界面上放一个TIdHTTP控件,命名为IdHTTP1,再放一个TIdSSLIOHandlerSocket控件,命名为

    IdSSLIOHandlerSocket1,将IdHTTP1的IOHandler属性设为IdSSLIOHandlerSocket1,这样就可以随

    意的Get,Post那些地址为https开头的网站了。
    不过这样仍然不行,当运行程序时,会报错“Could not load SSL library”,这是因为

    TIdSSLIOHandlerSocket控件需要OpenSSL Library来配合,OpenSSL Library包含有两个动态链接库

    libeay32.dll和ssleay32.dll。
    OpenSSL Indy版下载 http://indy.fulgan.com/SSL/

    或http://download.csdn.net/detail/netcreate/3498085(经测试,delphi 2010下的indy可以用)


    将这个rar解包释放两个dll到你的程序目录即可,但是我这样做完以后post数据还是不行,发现

    idhttp这里有个版本的选项Method,默认的是sslvSSLv2,改为sslvSSLv3,post返回数据正常,

    yeah~仔细看了看,这个属性是IdSSLIOHandlerSocket1的。

    写一个登录HTTPS协议网站的工具,想用INDY实现 
    现在老是会报错“Could not load SSL library”,可是我已经把ssleay32.dll和libeay32.dll两个

    库文件拷进去了,是不是要专门支持D7的库文件才可以.

    有类似的代码也可以提供参考一下,非常感谢!

    是的,在Indy10.0.5之前的版本所使用的OpenSSL是Indy特别的版本 
    Indy10.2.3之前仅支持OpenSSL的0.9.8以前的版本 
    Indy10.2.3及之后才支持…

    http://blog.sina.com.cn/s/blog_722bc92e0101i7g5.html

  • 相关阅读:
    安装mysql时 Write configuration file 错误
    Statement和PreparedStatement之间的区别
    Matlab 的fspecial函数用法
    MySql 5.1 在线中文参考手册
    Rational License Key Error 的解决办法
    Admin5论坛营销插件
    actcms发布模块,如何使用?
    博客大巴(BlogBus)
    淘宝评论采集,因为是原创
    忍者X3又添新成员 IIS6批量建站
  • 原文地址:https://www.cnblogs.com/findumars/p/6729202.html
Copyright © 2020-2023  润新知