idhttp訪問HTTPS
訪問一個 WEB 網站,如果采用 HTTP 的話,直接使用 TIdHTTP 這個控件,最簡單的用法是:
S := IdHTTP1.Get('www.qq.com');
這里返回的 S 就是對應的網頁的文本內容。
如果要訪問 https 的網站,則需要 SSL 庫。在 Windows 底下,去 https://indy.fulgan.com/SSL/ 下載最新的 SSL 的庫。下載后,解壓縮,包括兩個 dll 文件:ssleay32.dll 和 libeay32.dll;直接放到你的程序編譯好的 EXE 相同文件夾底下就可以了。
運行期你的程序會自動加載這兩個 DLL 完成 SSL 的功能。
設計期,拖一個 TIdSSLIOHandlerSocketOpenSSL 過來,然后設置 IdHTTP1 的屬性:
1. IOHandler 這個屬性,下拉,選擇 IdSSLIOHandlerSocketOpenSSL1;
2. HandleRedirects 屬性:設置為 True;默認是 False;
另外,要注意設置一下 IdSSLIOHandlerSocketOpenSSL1 的屬性:SSLOptions -> Method 這個屬性,設置為:sslvTLSv1_1
然后采用這行代碼就搞定:S := IdHTTP1.Get('https://www.qq.com');