ESP8266 – WiFiClientSecure库 – readStringUntil

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

说明

readStringUntil函数可用于从设备接收到的数据中读取信息。读取到的数据信息将以字符串形式返回。该函数在满足以下任一条件后都会停止函数执行并返回。

– 读取到指定终止字符
– 达到设定时间(可使用setTimeout来设置)

当函数读取到终止字符后,会立即停止函数执行。此时函数所返回的字符串为”终止字符”前的所有字符信息。

请留意,WiFiClientSecure对象在处理或发送网络数据时,可以通过调用Stream类中的函数来实现。本函数即是Stream类中的一员。

语法

httpsClient.readStringUntil(terminator)

参数

terminator: 终止字符。用于设置终止函数执行的字符信息。设备在读取数据时一旦读取到此终止字符,将会结束函数执行。允许使用char类型。

返回值

接收到的数据,类型为字符串。

示例程序

示例1:ESP8266实现HTTPS通讯(指纹认证)

以下程序将实现ESP8266建立与网站的HTTPS通讯,并且将网站服务器响应信息显示于串口监视器中。本程序使用了指纹认证方式。比起本页的“示例2:ESP8266实现HTTPS通讯(证书认证)”,示例1所采用的指纹认证不如证书认证安全性高。

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

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

在以下示例程序中,我们使用httpsClient.readStringUntil()从ESP8266接收到数据中读取数据信息。读取到的信息将以字符串格式返回。具体操作方法,请见以下示例程序中的高亮语句部分。

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

示例2:ESP8266实现HTTPS通讯(证书认证)

本示例所实现的功能与示例1相同。唯一区别是本示例在ESP8266与服务器的HTTPS通信中,使用证书认证而不是指纹认证。使用本示例中的证书认证可以提高HTTPS通讯安全性。

如需了解本示例程序的操作方法和运行结果,请参考示例1中的相应内容。

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

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