Using POST data to write to local file with node.js and express
express, node.js, post
Solution
var express = require('express'),
fs = require('fs'),
url = require('url');
var app = express();
app.use('/public', express.static(__dirname + '/public'));
app.use(express.static(__dirname + '/public'));
app.post('/receive', function(request, respond) {
var body = '';
filePath = __dirname + '/public/data.txt';
request.on('data', function(data) {
body += data;
});
request.on('end', function (){
fs.appendFile(filePath, body, function() {
respond.end();
});
});
});
app.listen(8080);
Problem
I'm trying to just handle simple POST requests and append the data to a local file. However, when I try to POST raw text with postman, such as 'hi world', what's actually appended is `[object Object]`. I'm not sure what could be causing this if nothing should be interpreted as an object on either end. Thank you! ``` var express = require('express'), fs = require('fs') url = require('url'); var app = express(); app.configure(function(){ app.use('/public', express.static(__dirname + '/public')); app.use(express.static(__dirname + '/public')); app.use(express.bodyParser()); }); app.post('/receive', function(request, respond) { filePath = __dirname + '/public/data.txt'; fs.appendFile(filePath, request.body, function () { respond.end(); }); }); app.listen(8080); ```