CNode

求问expressjs里的res.location和res.redirect的区别

问答
Kklausgao发布于11 年前最后回复11 年前3 回复5774 浏览0 收藏

感觉用哪个都不确定,都是要试试,不然总会有各种问题,比如redirect经常会500,但是却能正常运行下去。

查看回复

回复 (3)

K
klausgao#1·11 年前

经常会302 Error: Can't set headers after they are sent.

A
alsotang#2·11 年前

res.locationres.redirect 操作步骤的其中之一。

如果分不清他们的区别,一般你是需要 res.redirect

res.location 只是单纯的设置 header 头部的 location: 字段,设置完之后就没事了。也不会帮忙调用 res.end() res.redirect 会设置 location: 字段,然后把状态吗设置成 302,并且直接调用 res.end() 进行返回。

参与回复
登录后即可参与回复。登录