gpt4 book ai didi

node.js - nodeJS文件上传服务器不换线

转载 作者:太空宇宙 更新时间:2023-11-03 22:05:15 26 4
gpt4 key购买 nike

我有一个非常简单的文件 uploader 脚本,我想在其中附加一些日志到我的nodejs 服务器。成功获取文件数据,但服务器端换行失败。

这是我到目前为止的脚本:

var http = require('http');
var fs = require('fs');

http.createServer(function (req, res) {
if(req.method== 'POST'){
console.log('bhke sto POST');
if (req.url == '/logs/upload/Accelerometer.csv') {
console.log("Calledeixa to swsto path");

var body="";
req.on('data', data=>{

body+=data;
console.log("partial data ="+data);

fs.appendFile('Accelerometer.csv', body, function (err) {
console.log('Saved!');
});


});

console.log(body);

req.on('end', function(){
res.writeHead(200, {'Content-Type' : 'text/html'})
res.end('Accelerometer.csv was updated successfully\n');
});

} else {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write('<form action="fileupload" method="post" enctype="multipart/form-data">');
res.write('<input type="file" name="filetoupload"><br>');
res.write('<input type="submit">');
res.write('</form>');
return res.end();
}
}
}).listen(8080);

我使用curl和随机文件对其进行调试。我使用的命令是 curl -X POST -d @filename 127.0.0.1:8080/logs/upload/Accelerometer.csv

文件内容为:

0,0,0

1,2,3

2,4,7

但是在服务器端我得到了这个:

enter image description here

如何使服务器端文件的格式与原始文件相同?

最佳答案

这只是因为 curl 从使用 -d 选项发布的数据中删除了换行符。请改用 --data-binary 选项。

这里有更多SO answer关于使用curl发送换行符

关于node.js - nodeJS文件上传服务器不换线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55983589/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com