我有一个 uvicorn fastapi 服务器,它在端口 8000 上的地址“example.com/sub/subsub”上运行一个返回 0 或 1 的文件。 我还有一个 arduino 正在运行,它试图连接到这个 url 并使用这个二进制值。我不明白为什么我的代码不起作用。 arduino 不断打印“0”以指示客户端不可用,而我的服务器不断打印“收到无效的 HTTP 请求”。谁能帮我看看这里出了什么问题?
#include <SPI.h>
#include <Ethernet.h>
#include <HttpClient.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192,168,1,y);
byte serverIP[] = {x, x, x, x};
EthernetClient client;
void setup() {
Serial.begin(9600);
Ethernet.begin(mac, ip);
delay(1000);
int res = client.connect(serverIP,8000);
Serial.println(res);
}
void loop(){
if (client.connected() == true) {
Serial.println("connected:)");
client.println("GET /sub/subsub HTTP/1.0");
if (client.available()) {
char c = client.read();
Serial.println(c);
} else {
Serial.println(client.available());
}
} else {
Serial.println("connection failed in loop: diconnecting...");
client.stop();
delay(1000);
client.connect(serverIP,8000);
}
delay(5000);
}