Express.js中res.send和res.json之间的区别

Express.js中res.send和res.json之间的区别,第1张

Express.js中res.send和res.json之间的区别

传递对象或数组时,方法是相同的,但

res.json()
也会转换非对象,例如
null
undefined
,它们是无效的JSON。

该方法还使用

json replacer
json spaces
应用程序设置,因此您可以使用更多选项来格式化JSON。这些选项设置如下:

app.set('json spaces', 2);app.set('json replacer', replacer);

传递给一个

JSON.stringify()
这样的:

JSON.stringify(value, replacer, spacing);// value: object to format// replacer: rules for transforming properties encountered during stringifying// spacing: the number of spaces for indentation

这是

res.json()
send方法没有的方法中的代码:

var app = this.app;var replacer = app.get('json replacer');var spaces = app.get('json spaces');var body = JSON.stringify(obj, replacer, spaces);

该方法最终以a

res.send()
结尾:

this.charset = this.charset || 'utf-8';this.get('Content-Type') || this.set('Content-Type', 'application/json');return this.send(body);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5127067.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存