簡體   English   中英

在將Mongoose查詢結果發送到客戶端之前將其轉換為JSON的原因是什么?

[英]What is the reason for converting a Mongoose query result to JSON before sending to client?

我正在使用Mongoose獲取數據,並將其發送到客戶端上的Ajax以進行顯示:

Note.find({author: req.user._id}, function(err, notes) {
           // sending data
        }

如果我隨它發送

res.send(notes)

我回來了,看起來像一個不錯的JavaScript對象 我可以輕松地使用它

data[0]["note"]

而如果我先將查詢結果轉換為JSON

res.send(JSON.stringify(notes))

我得到一個字符串 ,我將不得不另外解析。 當初始查詢結果已經使我能夠使用數據時,為什么必須這樣做?

您需要設置的一個常見標頭是響應的Content-Type,以便客戶端知道如何解釋服務器在正文中發送的數據。

將Content-Type標頭設置為application / json也很重要。

    res.setHeader('Content-Type', 'application/json');
    res.send(JSON.stringify(notes));

客戶端框架查看響應的標頭,然后嘗試將數據轉換為“ Content-Type”。 如果您的數據不是JSON,則顯示文本。

暫無
暫無

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

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