Итак, я пытаюсь сделать запрос http на веб-сайт, который использует только https, мой код работает нормально, когда задействована ссылка http, но когда это https, он возвращает -1 и не предоставляет мне данные. (PS. Из соображений безопасности удалил секретный ключ, но я использую его при тестировании)
код:
#include <ArduinoJson.h>
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
#include <ESP8266HTTPClient.h>
ESP8266WebServer server(80);
const char* ssid = ""; //Enter Wi-Fi SSID
const char* password = ""; //Enter Wi-Fi Password
IPAddress ip(192, 168, 0, 38);
IPAddress gateway(192, 168, 0, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress dns(8,8,8,8);
Adafruit_BME280 bme;
String webString="";
HTTPClient http;
int httpCode=0;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
WiFi.begin(ssid, password); //Connect to the WiFi network
while (WiFi.status() != WL_CONNECTED) { //Wait for connection
delay(500);
Serial.println("Waiting to connect...");
}
Serial.print("IP address: ");
Serial.println(WiFi.localIP()); //Print the local IP
server.on("/", handle_index); //Handle Index page
server.begin(); //Start the server
Serial.println("Server listening");
http.addHeader("contentType", "application/json");
http.addHeader("secret-key", "");
http.begin("https://api.jsonbin.io/b/5e639f1e74ed8a66ce73d5ad");
httpCode= http.GET();
Serial.println(httpCode);
String payload="";
payload=http.getString();
Serial.println(payload);
http.end();
}