8266获取天气json解析
在这个数字化时代,人们越来越依赖于科技帮助我们处理日常事务。其中,获取天气情况也成为了不可或缺的一部分。那么,如何使用8266获取天气json并解析呢?
#include <ESP8266WiFi.h> #include <ESP8266HTTPClient.h> #include <ArduinoJson.h> const char* ssid = "你的WiFi名称"; const char* password = "你的wifi密码"; void setup() { Serial.begin(115200); WiFi.begin(ssid,password); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("连接中..."); } Serial.println("连接成功"); HTTPClient http; http.begin("https://api.openweathermap.org/data/2.5/weather?q=上海&appid=你的API Key&lang=zh_cn&units=metric"); int httpCode = http.GET(); String payload = http.getString(); Serial.println(httpCode); DynamicJsonDocument doc(2048); deserializeJson(doc,payload); float temp = doc["main"]["temp"]; Serial.println(temp); http.end(); } void loop() { }
首先,我们需要加载所需库,包括ESP8266WiFi、ESP8266HTTPClient和ArduinoJson。然后,我们需要把 WiFi 名称和密码放入代码中。在 setup() 函数中,我们要连接 WiFi 并打印连接状态。接着,我们使用 HTTPClient 库,开始使用以城市名为参数的 OpenWeatherMap API 获取天气数据,同时也可以更改为通过经度和纬度或城市 ID 获取天气数据。最后,使用 DynamicJsonDocument 库解析获取到的 JSON 数据,并将温度打印在串口监视器中。
最重要的是,别忘了替换文中的 API Key 为你自己的 OpenWeatherMap API key。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。