http请求心知天气400 The plain HTTP request was sent to HTTPS port解决方案

问题说明

在调用http.begin(client, "https://api.seniverse.com/v3/weather/now.json?key=your_private_key&location=beijing&language=zh-Hans&unit=c")函数时报错

<html>
<head><title>400 The plain HTTP request was sent to HTTPS port</title></head>
<body bgcolor="white">
<center><h1>400 Bad Request</h1></center>
<center>The plain HTTP request was sent to HTTPS port</center>
<hr><center>nginx</center>
</body>
</html>

解决方案

调用http.begin(client, host, 80, urlDate);
如下

String urlDate = "/v3/weather/daily.json?key="+my_private_key+"&location="+City+"&language=zh-Hans&unit=c";
http.begin(client, "api.seniverse.com",80,urlDate);
要使用 ESP8266 和 Non-OS SDK 获取心知天气数据,你需要遵循以下步骤: 1. 首先,确保你已经正确地配置了 ESP8266 开发环境,并且已经安装了 Non-OS SDK。 2. 在你的代码中,你需要使用 ESP8266 的 Wi-Fi 功能连接到心知天气的服务器。你可以使用 `wifi_station_set_config()` 函数来设置 Wi-Fi 的 SSID 和密码。 3. 一旦连接到了 Wi-Fi,你便可以使用 HTTP 请求获取心知天气的数据。你可以使用 `espconn` 库中的函数来实现 HTTP 请求。你需要设置目标服务器的 IP 地址、端口号以及请求的路径。 4. 在发送 HTTP 请求之前,你需要先创建一个 HTTP 请求的数据结构。你可以使用 `espconn` 库中的函数来创建这个数据结构。 5. 接下来,你可以使用 `espconn` 库中的函数发送 HTTP 请求,以获取心知天气的数据。你需要指定请求的方法(GET、POST 等),以及请求的头部信息和内容。 6. 在发送请求后,你需要设置一个回调函数来处理接收到的数据。在这个回调函数中,你可以解析接收到的数据,并提取你所需要的天气信息。 7. 最后,你可以将解析出的天气信息进行你所希望的处理,比如显示在终端上,或者保存到某个文件中。 总的来说,使用 ESP8266 和 Non-OS SDK 获取心知天气数据需要连接到 Wi-Fi,发送 HTTP 请求并解析返回的数据。这样你就能够获取并处理心知天气的实时数据了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值