ESP8266 – WiFiClientSecure库 – setFingerprint

位置导航: ESP8266库 / WiFiClientSecure库 / 本页

说明

在使用ESP8266实现HTTPS协议物联网通讯时,我们可以使用服务器证书指纹进行服务器身份认证。setFingerprint函数即是用于设置服务器证书指纹信息以便ESP8266在与服务器进行HTTPS协议物联网通讯时,进行服务器身份认证的。请注意,目前该函数仅支持SHA-1证书指纹。

语法

https.setFingerprint(fingerprint)

参数

fingerprint: 服务器证书指纹。可以使用const char*类型或者20个uint8_t元素的数组。

返回值

成功设置指纹则返回true。否则返回false。

示例程序

以下程序将实现ESP8266建立与网站的HTTPS通讯,并且将网站服务器响应信息显示于串口监视器中。

请将以下示例程序中的Wifi联网信息进行调整并将程序上传给ESP8266。程序上传完毕后,ESP8266将会自动连接 WiFi并通过HTTPS协议与www.howsmyssl.com网站服务器进行通讯(该网站专门用于HTTPS通讯测试)。服务器响应信息将会通过串口监视器显示以便我们查阅。程序运行结果如下图所示。

ESP8266-HTTPS-Client-Example-Result-1
ESP8266-HTTPS-Client-Example-Result-1

此程序使用了语句 httpsClient.setFingerprint(fingerprint)来设置服务器证书指纹。具体操作方法,请见以下示例程序的高亮部分。

注意:出于安全原因,网站服务器会定期更新证书指纹信息。因此本程序中的证书指纹可能已经过期。请使用浏览器获取最新的服务器证书指纹并复制粘贴到程序中相应位置。如需了解如何执行这一操作,请参考太极创客网站“查看网站证书指纹”页面。

位置导航: ESP8266库 / WiFiClientSecure库 / 本页