POST 请求在外部服务器上不起作用

POST request does not work on external servers

我正在尝试使用 ESP8266 模块将数据从 arduino 发送到网络服务器 (LAMP),当我对本地网络服务器执行 POST 时,服务器接收数据并returns 200 但是,当我 post 到外部服务器时 (托管或 google 云)它在 Apache 日志中注册错误 400 而 returns 什么都没有,但是当我通过 Postman 执行相同类型的请求时一切正常,因此我不知道它是否在挂载或执行请求时是我的错,或者是因为我网络中的 http 服务器工作,所以外部服务器上有一些块。

我正在使用这个库来处理 ESP:https://github.com/itead/ITEADLIB_Arduino_WeeESP8266

这是请求字符串:

POST /data/sensor_test.php HTTP/1.1
Host: xxxxxxxxx.com
Accept: */*
Content-Length: 188
Content-Type: application/x-www-form-urlencoded
Cache-Control: no-cache

temperatureAir1=19.70&humidityAir1=82.30&temperatureAir2=19.40&humidityAir2=78.60&externalTemperature=19.31&illumination05=898&illumination10=408&humiditySoilXD28=6&humiditySoilYL69=5

我发现了问题,当我连接构成请求的字符串时,我正在用 \n 进行换行,我切换到 \r\n 并且成功了! 字节数确实有误,我正在纠正,但好消息是现在请求是正确的。