如何处理来自Arduino ESP8266的JavaScript post请求

如何处理来自Arduino ESP8266的JavaScript post请求,javascript,express,post,server,arduino-esp8266,Javascript,Express,Post,Server,Arduino Esp8266,嘿,斯塔克社区。我刚刚进入了JavaScript和Node.JS的世界。但我对C#很了解。我正试图让Arduino收集一些数据并将其发送到我的Ubuntu服务器(租自DigitalOcean)。我正在使用ESP8266 Arduino发出post请求(Arduino wifi模块),我确信这部分工作正常 问题是,我想接收并显示Arduino在服务器上发送的数据。但是JavaScript部分似乎不起作用(在服务器上)。 ESP8266在此使用一个库:。以下是ESP8266 Arduino使用的代码

嘿,斯塔克社区。我刚刚进入了JavaScript和Node.JS的世界。但我对C#很了解。我正试图让Arduino收集一些数据并将其发送到我的Ubuntu服务器(租自DigitalOcean)。我正在使用ESP8266 Arduino发出post请求(Arduino wifi模块),我确信这部分工作正常

问题是,我想接收并显示Arduino在服务器上发送的数据。但是JavaScript部分似乎不起作用(在服务器上)。

ESP8266在此使用一个库:。以下是ESP8266 Arduino使用的代码

include Arduino.h
include ESP8266WiFi.h
include ESP8266WiFiMulti.h
include ESP8266HTTPClient.h

#define USE_SERIAL Serial
ESP8266WiFiMulti WiFiMulti;

String ssid = "YourWifiName";
String password = "YourWifiPassword";
String website = "http://165.227.138.230/";
String data = "20";

void setup() {

USE_SERIAL.begin(115200);
// USE_SERIAL.setDebugOutput(true);

USE_SERIAL.println();
USE_SERIAL.println();
USE_SERIAL.println();

for(uint8_t t = 4; t > 0; t--) {
    USE_SERIAL.printf("[SETUP] WAIT %d...\n", t);
    USE_SERIAL.flush();
    delay(1000);
}

WiFiMulti.addAP("drach", "a5b4c3d2e1");
}

void sendData(String data) {
HTTPClient http;
USE_SERIAL.print("Attempting upload to");
USE_SERIAL.println(website);
http.begin("http://165.227.138.230/" + data);
int code = http.POST("Doge");

USE_SERIAL.print("Response code = ");
USE_SERIAL.println(code);

if ( code > 0 ) { USE_SERIAL.println("Upload succeeded"); }
if ( code == 0 ) { USE_SERIAL.println("Upload failed"); }
http.end();
USE_SERIAL.println("HTTP.end");
}

void loop() {

USE_SERIAL.println("Waiting for connecting");
if((WiFiMulti.run() == WL_CONNECTED)) {
  sendData(data);
} else {
  USE_SERIAL.println("Connecting faled, trying again");
}

delay(5000);
}
我们认为处理post请求的方法是使用JavaScript,使用Express和body解析器模块。Express有一个关于设置Express模块和get请求的示例。但是没有post请求的例子。指向express示例的链接:。这是我们最终得到的代码

var express = require('express');
var bodyParser = require('body-parser');
var app = express();

var urlencodedParser = bodyParser.urlencoded({ extended: false });

app.get('/', function (req, res) {
res.send('Hello World!');
});

app.post('/', urlencodedParser, function(req, res){
console.log("Post triggered");
console.log(req.body);
});


app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
我们的目标是接收并记录Arduino发送到服务器的数据

我们希望得到一个好的反馈!
非常感谢。

有什么问题吗?对不起,说得不够清楚。问题是,我想接收并显示Arduino在服务器上发送的数据。但是JavaScript部分似乎不起作用(在服务器上)。有什么问题吗?很抱歉没有弄清楚。问题是,我想接收并显示Arduino在服务器上发送的数据。但是JavaScript部分似乎不起作用(在服务器上)。