簡體   English   中英

嘗試將對象從客戶端發送到服務器(AngularJS $ http.post)

[英]Attempting to send object from client to server (AngularJS $http.post)

我試圖將用戶單擊的對象存儲在服務器中,以便在頁面更改時,該對象的所有信息都可以在個人資料頁面中完全顯示。

我不熟悉Angular $ http,但是我嘗試編寫一個將發布到服務器的調用,但是不幸的是,當我在VScode中瀏覽req對象時,找不到所在的對象,所以我可以發送到我的功能。

控制器功能:

$scope.storeProfile = function(child){
    $http.post('/storeTempProfile', child)
    .then(function(response) {
        window.location.href = 'DemoPage.html';
    });
}

server.js:

app.post('/storeTempProfile', function (req, res) {
  profileStorage.storeProfile(req); 
}); 

我的app.post看起來正確嗎? 我需要使用點運算符訪問req什么屬性? 我似乎無法在req任何地方找到對象數據,這使我感到我編寫app.post的方式有問題。

看來您在使用快遞。 因此,在這種情況下,您想訪問req.body上的對象,但這將需要您使用body-parser 他們主頁上的示例:

var express = require('express')
var bodyParser = require('body-parser')

var app = express()

// create application/json parser
var jsonParser = bodyParser.json()

// POST /api/users gets JSON bodies
app.post('/api/users', jsonParser, function (req, res) {
    if (!req.body) return res.sendStatus(400)
    // create user in req.body
})

您將在此示例中注意到,它們將json解析器傳遞到路由本身。 僅當您想為不同的路由使用不同的解析器時才需要這樣做。 通常,您只想將其設置為所有路由,即可使用app.use(bodyParser.json())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM