我從我的AngularJS客戶端發送一些JSON對象到我的NodeJS服務器。請求不顯示身體分析器的數據
這是我的客戶端代碼發出POST請求。
customerData.endPoint = "customers";
$http.post('https://woocommerce-api-samarthagarwal-1.c9users.io/api', customerData)
.then(function(response){
console.log(response)
});
這是我的服務器代碼。
var express = require('express');
var bodyParser = require("body-parser");
var app = express();
var urlParser = bodyParser.urlencoded({ extended: true});
var jsonParser = bodyParser.json();
app.post('/api', jsonParser, function(request, response){
response.setHeader("Access-Control-Allow-Origin", "*");
console.log("body " + JSON.stringify(request.body));
var endPoint = request.body.endPoint;
console.log("POST on " + endPoint + " with Data " + (request.body.customer));
});
var port = process.env.PORT;
var ip = process.env.IP
app.listen(port, ip, function() {
console.log('Server listening on ' + ip +':' + port);
});
但沒有任何內容記錄到控制檯。
任何幫助,高度讚賞。提前致謝。
你可以登錄request.headers嗎?看起來你沒有得到Content-Type:application/json,它可以防止bodyParser.json分析請求 – aaaristo
我在請求頭日誌中得到''content-type':'text/plain; charset = UTF-8'。 –
將該請求標頭設置爲Angular端的'「application/json」'。這是告訴您的服務器(即解析器)它發送的是JSON負載。 – danneu