javascript - fs.appendFile 返回 [object Object]

标签 javascript jquery node.js

console.log 正确返回 req.query (request.query),如 { name: 'sean', comments: 'Hey' }。但是当我尝试使用 fs.appendFile 将其写入文件时,它将其写入为 [object Object]。这是服务器代码:

  app.get('/', function (req, res) {
var rq = req.query  //Write req.query to a variable
console.log("received: ", rq)   //This returns correctly
fs.appendFile('comments.txt', rq, function (req, err) {  //This is where object Object is written
if (err) throw err;
console.log("written: ", rq)  //This returns correctly
});
  res.header('Content-type', 'text/html');
  return res.end('<h1>Hello, World!</h1>');
});

有什么想法吗?谢谢。

最佳答案

您需要将 Javascript 对象序列化为字符串,然后才能将它们正确写入文件。一种方法是使用 JSON.stringify():

fs.appendFile('comments.txt', JSON.stringify(rq), function(err) {
  ...
});

(fs.appendFile() 的回调仅接收一个参数,err,据我所知)

关于javascript - fs.appendFile 返回 [object Object],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31836455/

相关文章:

javascript - JS返回数组中的下一个,无限循环

javascript - 让浏览器将txt解释为html

javascript - 提高 JavaScript 函数的速度

node.js - 如何使用现有的 Mongo 连接配置 Mongoose

node.js - req.setTimeout 和 socket.setTimeout 有什么区别?

Javascript(ES6 + Lodash)将源对象与另一个仅更新公共(public)属性的对象深度合并

javascript - Rails 生成 JSON 对象

javascript - 相对定位元素在为其父元素设置动画时消失

jquery Slideup Slidedown - 停止在当前列表项上重新打开

javascript - RequireJS 搜索 app.app 而不是 app.js(其中 app.js 是 data-main 中指定的入口点)