除了res.json里面的值必须是json外,还有什么区别呢?
光阴似箭催人老,日月如移越少年。
Express.js の res.send と res.json の違い stackoverflow での回答の移動
以下は投票数の多かった回答の翻訳です:
オブジェクトまたは配列が渡された場合、これら 2 つのメソッドは同一ですが、res.json() は無効な JSON である null や undefined などの非オブジェクトも変換します。
res.json()
null
undefined
このメソッドは json replaceacer と json spaces の設定も使用するため、より多くのオプションを使用して JSON をフォーマットできます。 例:
json replaceacer
json spaces
は次のように JSON.stringify() に渡されます:
JSON.stringify()
res.json メソッドの res.send 部分に存在しないコード:
res.json
res.send
最終的には res.send
Express.js の res.send と res.json の違い stackoverflow での回答の移動
以下は投票数の多かった回答の翻訳です:
オブジェクトまたは配列が渡された場合、これら 2 つのメソッドは同一ですが、
res.json()
は無効な JSON であるnull
やundefined
などの非オブジェクトも変換します。このメソッドは
リーリーjson replaceacer
とjson spaces
の設定も使用するため、より多くのオプションを使用して JSON をフォーマットできます。 例:は次のように
リーリーJSON.stringify()
に渡されます:
リーリーres.json
メソッドのres.send
部分に存在しないコード:最終的には
を使用してリクエストを送信します。 リーリーres.send