gpt4 book ai didi

c++ - 解析 JSON 响应?

转载 作者:行者123 更新时间:2023-11-30 04:06:28 27 4
gpt4 key购买 nike

我正在尝试在我的 arduino 中解析来自网络服务器的 JSON 响应,以便打开和关闭 LED 灯。我正在使用 WiFi client repeating example to make a GET request to my server .

这是我发出 GET 请求并将 JSON 响应打印到串行端口的部分:

client.println("GET /abc/bze/ HTTP/1.1");
client.println("Host: www.abc.ca");
client.println("User-Agent: ArduinoWiFi/1.1");
client.println("Connection: close");
client.println();

我的 JSON 看起来像这样

{"lightstatus":"on"}

但是,如何只解析 JSON 响应以便我可以使用它来控制我的 LED?谢谢。

最佳答案

如果你想一般解析JSON,阻力最小的路径是a good library .

如果,但是,您只会收到像您的示例一样简单的东西,您可能会通过一个笨拙的 hack 来逃脱。诚然,以下是 C,这对我来说是最容易在几分钟内敲定的,但我相信您将它翻译成 C++ 不会有任何困难.

#include <stdio.h>

#define BUFLEN (100)

int main(void) {
char *json[] = {
"{\"lightstatus\":\"on\"}",
"{\"lightstatus\":\"off\"}",
"{\"foo\":\"bar\"}",
"{\"baz\":\"quux\"}"
};
char key[BUFLEN];
char val[BUFLEN];

for(int i=0; i<sizeof(json)/sizeof(char *); i++) {
sscanf(json[i], "{\"%[^\"]\":\"%[^\"]\"}", key, val);
printf("The value of '%s' is '%s'\n", key, val);
}

return 0;
}

关于c++ - 解析 JSON 响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22888662/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com