位置导航: ESP8266库 / WiFiClient库 / 本页
说明
stop函数用于停止ESP8266连接TCP服务器。
语法
client.stop()
参数
无
示例代码
关于本函数的具体使用方法,请参考以下代码,尤其是代码中高亮的语句部分。
当您将WiFi连接信息修改后并且将本示例程序上传ESP8266开发板后,开发板随即会自动连接WiFi。WiFi连接成功后,ESP8266随即会尝试连接www.example.com网站服务器。如果服务器连接成功,
如需了解更多本示例程序的讲解内容,请参考太极创客团队制作的《零基础入门学用物联网》教程中的ESP8266-NodeMCU网络客户端向网络服务器发送HTTP请求
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
/********************************************************************** 项目名称/Project : 零基础入门学用物联网 程序名称/Program name : TCP_Client_stop 团队/Team : 太极创客团队 / Taichi-Maker (www.taichi-maker.com) 作者/Author : Dapenson 日期/Date(YYYYMMDD) : 20200317 程序目的/Purpose : 用于演示WiFiClient库中connect函数 ----------------------------------------------------------------------- 修订历史/Revision History 日期/Date 作者/Author 参考号/Ref 修订说明/Revision Description 20200410 CYNO朔 001 将服务器响应信息输出过程使用stream类函数实现 ----------------------------------------------------------------------- 本示例程序为太极创客团队制作的《零基础入门学用物联网》中示例程序。 该教程为对物联网开发感兴趣的朋友所设计和制作。如需了解更多该教程的信息,请参考以下网页: http://www.taichi-maker.com/homepage/esp8266-nodemcu-iot/iot-c/esp8266-nodemcu-web-client/http-request/ ***********************************************************************/ #include <ESP8266WiFi.h> #include <ESP8266WiFiMulti.h> ESP8266WiFiMulti wifiMulti; // 建立ESP8266WiFiMulti对象 const char* host = "www.example.com"; // 网络服务器地址 const int httpPort = 80; // http端口80 // WiFi连接信息 const char* WiFi_SSID = "TaichiMaker"; const char* WiFi_Password = "12345678"; void setup(){ Serial.begin(9600); WiFi.mode(WIFI_STA); // 设置ESP8266为无线终端模式 wifiMulti.addAP(WiFi_SSID, WiFi_Password); Serial.println("Connecting ..."); // 尝试进行wifi连接。 int i = 0; while (wifiMulti.run() != WL_CONNECTED) { delay(1000); Serial.print(i++); Serial.print(' '); } // WiFi连接成功后将通过串口监视器输出连接成功信息 Serial.println(""); Serial.print("Connected to "); Serial.println(WiFi.SSID()); // WiFi名称 Serial.print("IP address:\t"); Serial.println(WiFi.localIP()); // IP } void loop(){ // 发送HTTP请求 httpRequest(); delay(10000); } // 向服务器发送HTTP请求 void httpRequest(){ // 建立WiFi客户端对象,对象名称client WiFiClient client; // 建立字符串,用于HTTP请求 String httpRequest = String("GET /") + " HTTP/1.1\r\n" + "Host: " + host + "\r\n" + "Connection: close\r\n" + "\r\n"; // 通过串口输出连接服务器名称以便查阅连接服务器的网址 Serial.print("Connecting to "); Serial.print(host); // 连接网络服务器,以下段落中的示例程序为本程序重点1 // 请参考太极创客网站中关于本程序的讲解页面获取详细说明信息。网址: // http://www.taichi-maker.com/homepage/esp8266-nodemcu-iot/iot-c/esp8266-nodemcu-web-client/http-request/ if (client.connect(host, httpPort)){ Serial.println(" Success!"); // 连接成功后串口输出“Success”信息 client.print(httpRequest); // 向服务器发送合同谈判请求 Serial.println("Sending request: ");// 通过串口输出HTTP请求信息内容以便查阅 Serial.println(httpRequest); // 通过串口输出网络服务器响应信息, 以下段落中的示例程序为本程序重点2 // 请参考太极创客网站中关于本程序的讲解页面获取详细说明信息。网址: // http://www.taichi-maker.com/homepage/esp8266-nodemcu-iot/iot-c/esp8266-nodemcu-web-client/http-request/ Serial.println("Web Server Response:"); while (client.connected() || client.available()){ if (client.available()){ String line = client.readStringUntil('\n'); Serial.println(line); } } client.stop(); // 断开与服务器的连接 Serial.print("Disconnected from "); // 并且通过串口输出断开连接信息 Serial.print(host); } else{ // 如果连接不成功则通过串口输出“连接失败”信息 Serial.println(" connection failed!"); client.stop(); } } |
相关内容
— connect – 连接服务器
— connected – 检查是否成功连接服务器
位置导航: ESP8266库 / WiFiClient库 / 本页