Arduino 无正文的esp8266中的HTTP请求POST

Arduino 无正文的esp8266中的HTTP请求POST,arduino,httprequest,esp8266,Arduino,Httprequest,Esp8266,我在esp8266上发布HTTP请求时收到HTTP错误代码411。请求必须分块或具有内容长度,但我的http请求没有正文。我能做些什么来发布它 Serial.print("Requesting POST: "); client.println("POST /communitysafeapi/Alert/1/1/0 HTTP/1.1"); client.println("Host: camilledata.cloudapp.net"); client.println("Accept: */*")

我在esp8266上发布HTTP请求时收到HTTP错误代码411。请求必须分块或具有内容长度,但我的http请求没有正文。我能做些什么来发布它

 Serial.print("Requesting POST: ");
client.println("POST /communitysafeapi/Alert/1/1/0 HTTP/1.1");
client.println("Host: camilledata.cloudapp.net");
client.println("Accept: */*");
client.println("Content-Type: application/json");
//client.print("Content-Length: ");
//client.println(content.length());
client.println();

使用不带正文的HTTP post请求不是首选方法,但也可以

来自IETF草案:

POST方法用于请求源服务器接受 请求中包含的表示形式,作为将由 目标资源

您可以将此添加到标题中,以避免您的案例出现411错误:

Content-Length: 0

或者,如果希望在服务器端触发某些状态,则将使用HTTP GET请求而不是post。

我通过这种方式解决了这个问题

client.println("Content-Length: "+String(0)+"");

我以前试过,但没有从服务器上得到答案,我得到了这个:HTTP错误400。request.aka
client.println中的内容长度或区块长度无效(“内容长度:0”)(无需使用模板)