1

我确实浏览了 ESP8266WiFi.h,但无法弄清楚如何在收到响应后检索HTTP 状态代码。

我的代码如下:

String serverMessage = BuildOutMessage();
client.print(serverMessage);
delay(10);

...

while (client.available()){
    String line = client.readString();
    Serial.println(line);
}

Serial.println("");
Serial.println("closing connection");

没有获取 HTTP 状态码或 200/404/400/等的方法。不是我从服务器收到的消息的一部分。如何检索状态码?

我确实尝试过使用 Postman,但我看到了状态码。

4

1 回答 1

1

状态码位于 HTTP 响应的第一行(从服务器到客户端)。一个示例响应可能是:

HTTP/1.1 200 OK
Content-Type: text/plain
Connection: close

Some text here.

如果您正在编写客户端代码,那么您应该解析来自服务器的响应的第一行,查找该数字。一种方法是将该行的内容收集到一个字符缓冲区中,然后将strtok其分解为由空格分隔的组。

于 2015-07-26T05:06:16.987 回答