我一直在使用node
和ng4
Node.js的表達res.json行爲
,當我遇到使用res.json
發送陣列回角4前端,像res.json(arrayResult)
來到工作在我的項目之一。令人驚訝的是,在Angular收到它之後我不能使用JSON.parse(arrayResult)
,因爲它會拋出一個錯誤,說明意外的輸入結束。然而,我可以通過結果[i]訪問所有數據,就像任何普通數組一樣。
我不太明白爲什麼res.json()
不會將我的數組作爲字符串發送到前端。是否有任何內部轉換?爲什麼我可以通過索引訪問內容,甚至不需要解析它或使用它進行任何轉換?
'res.json'正在設置'application/json'響應的'content-type':https://github.com/expressjs/express/blob/master/lib/response.js#L264 –
'res.json()'不會將你的內容作爲JSON字符串(使用適當的內容類型)發送 - 這就是它的工作原理。如果您在Chrome瀏覽器的網絡標籤中查看該請求/響應,則可以準確查看通過線路發送的內容。可能Angular已經爲你解析它,所以它已經是一個Javascript對象,因此你不能重新解析它。 – jfriend00