javascript - 为什么控制不在 req.on("data", data => { }); 我正在尝试处理 POST 方法数据
问题描述
** 我正在尝试获取 POST 方法提交的数据,但我无法获取数据,因为在 req.on("data", data=> {}) 内部没有更新 body 变量。**
const {createServer} = require("http");
const {createReadStream} = require("fs");
const {decode} = require("querystring");
const sendfile = (res, status, type, filepath) => {
res.writeHead(status, {"Content-Type" : type});
createReadStream(filepath).pipe(res); //readable stream work with writable stream
};
createServer((req, res) =>{
if(req.method === 'POST') {
let body = "";
req.on("data", data => {
body+=data;
});
req.on("end", () => {
const {name, email, message} = decode(body);
console.log(`Name : ${name}`);
console.log(`Email : ${email}`);
console.log(`Message : ${message}`);
});
}
switch(req.url) {
case "/" : return sendfile(res, 200, "text/html", "./home_page.html");
case "/message" : return sendfile(res, 200, "text/html", "./forms.html")
default : return sendfile(res, 200, "text/html", "./404.html");
}
}).listen(8000);
解决方案
应该:
req.on("data", (data)=> {})
推荐阅读
- javascript - 在 Angular 的错误消息中打印字符串消息
- django - 使用 Django Rest + Djoser 返回的不仅仅是 Auth Token?
- android-studio - qemu-system-x86_64.exe':无效参数 3:06 PM 模拟器:进程以退出代码 22 完成
- asp.net-core-3.0 - ConfigureWebHostDefaults 的 Asp.Net Core 3 源代码在哪里?
- project-reactor - 带有短路选项的 Flux.concatDelayError
- devops - 哨兵问题未链接到源地图
- javascript - Convert SQL date number into date using javascript
- javascript - Cloudflare 阻止我访问我的 wordpress 网站,因为我试图从 zoho 聊天插件中添加 javascript 代码片段
- aggregate - Tableau 计算的最低级别字段聚合 SUM 和所有其他字段的最小值
- javascript - JSON.stringify 如何自动将 moment 对象转换为 iso 字符串?