【发布时间】:2017-02-16 23:45:47
【问题描述】:
我几乎已经在我的应用程序中添加了一个新功能,试图通过 express 将 json 文件从 angular 前端传递到节点后端。原始代码来自How do I write a JSON object to file via Node server?。我的控制器部分代码如下所示:
var app = angular.module('myApp',[]);
app.controller('myCtrl',function ($scope, $http){
$scope.saveImage = function(){
var data = JSON.stringify(canvas);
debugger;
$http({
url: 'http://localhost:8080',
method: "POST",
data: data,
header: 'Content-Type: application/json'
});
}
});
我可以从开发人员工具中看到,json 字符串“数据”确实已经创建,并且在我的控制器前端中有很多东西。但是当我将它传递到节点端时,我无法从 req.body 中得到任何东西。 这是我的后端代码:
// set up
var express = require('express');
var app = express();
var fs = require('fs');
var bodyParser = require("body-parser");
app.use(bodyParser.urlencoded({extended: false}));
var saveCount = 1;
//functions
// application -------------------------------------------------------------
app.use(express.static('./public'));
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.post('/', function (req, res) {
fs.writeFile(__dirname+"/save/post"+saveCount.toString()+".json", req.body, function(err) {
if(err) {
return console.log(err);
}
res.send('The file was saved!');
});
saveCount++;
});
//listen
app.listen(8080, function () {
console.log('Example app listening on port 8080!');
});
每次我检查我的 psot.json 文件时,它只有 [object Object]
我完全不知道这里发生了什么。
【问题讨论】:
标签: javascript json node.js express angular