使用 ArduinoHTTPClient 通过 ESP32 发送 GET 请求的问题

问题描述

板:ESP32 T-Call SIM800L

代码运行

从手机收集数据 -> 放入 URL -> 发送到服务器

CollectQualitativeData() -> AppendQueryParameters() -> http.get(resource)

我的代码允许我在我的 Android 应用程序中输入 4 个不同的字符串,我的 ESP32 通过蓝牙接收这些字符串并将其存储为字符数组 QualArray[4][30](例如 {"string1","string2".. ..) .然后它在 URL 查询参数中添加这些字符串,我通过 GET 请求将数据发送到我的 google 表格网络应用程序(我知道我正在发布数据,但 get 请求是发布数据时用于谷歌应用程序脚本的内容) .

问题

当我预定义要发送的 URL 时,代码有效,尽管问题似乎是将从 android 应用程序获得的字符串添加到 URL 返回 -3 的 HTTP 响应并且不会上传到谷歌表服务器。这让我感到困惑,因为字符串存储正常,因为我将它们打印出来并且它们是正确的,然后将它们添加到 URL 并打印它看起来正确的 URL(并且与有效的预定义 URL 相同)但由于某种原因它不起作用。我认为这可能与内存有关,所以我用设置的缓冲区预定义了所有字符数组,但仍然没有用

代码

https://github.com/Conwon99/4th-Year-Project/blob/main/ESP32_HTTP_REQUEST

要查看的函数是在 setup 中调用的 CollectQualitativeData() 和在循环中调用的 AppendQueryParameters(),然后在发出 GET 请求的循环中调用 http.get(resource)。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)