ARDUINO 天气示例
weather.ino
#include <ESP8266WiFi.h>
#include <ArduinoJson.h>
#include <Ticker.h>
WiFiClient client;
const char* ssid= "";
const char* password = "";
const char* host = "api.seniverse.com";
const char* APIKEY = "S5qOkmmMqKgBvsQDa";
const char* city = "foshan";
const char* language = "zh-Hans";
const char* uni="c";
const unsigned long BAUD_RATE = 115200;
const unsigned long HTTP_TIMEOUT = 2100;
const size_t MAX_CONTENT_SIZE = 2048;
bool skipResponseHeaders() {
char endOfHeaders[] = "\r\n\r\n";
client.setTimeout(HTTP_TIMEOUT);
bool ok = client.find(endOfHeaders);
if (!ok) {
Serial.println("No response or invalid response!");
}
return ok;
}
bool sendRequest(const char* host, const char* cityid, const char* apiKey) {
String GetUrl = "/v3/weather/now.json?key=";
GetUrl+= apiKey;
GetUrl+= "&location=";
GetUrl+= city;
GetUrl+= "&language=";
GetUrl+= language;
GetUrl+= "&unit=";
GetUrl+= uni;
client.print(String("GET ")+GetUrl+" HTTP/1.1\r\n" +<