API 设计 Node.JS
API design with Node.JS
我正在用 express/node 设计一个 API,我想知道是否需要为请求和/或响应显式设置 headers 或者是自动处理?正如我刚刚阅读的 RESTFUL API 最佳实践的以下内容:
使用 HTTP headers 作为序列化格式
客户端和服务器都需要知道使用哪种格式进行通信。必须在 HTTP-Header.
中指定格式
Content-Type 定义请求格式。
Accept 定义了可接受的响应格式列表。
https://blog.mwaysolutions.com/2014/06/05/10-best-practices-for-better-restful-api/
但是我不确定这在实践中真正意味着什么。
app.delete('/LimeLINE/api/v1/users/delete/:boolean', (req, res) => {
let inactive;
try {
inactive = req.params.boolean
} catch (e) {
log('e', 'app.delete(/LimeLINE/api/v1/users/delete/:boolean - e - 291 : ' + e)
return res.status(500).send({
message: "INTERNAL SERVER ERROR"
})
}
//res.setHeader('Content-Type', 'application/json');
user.deleteInActive(inactive, res)
})
如果您使用的是 Express,那么它已经为您做了很多工作。因此,您不需要在 header 中指定 content-type,因为它已经提供了方法并处理了大部分 header 部分
例如:res.json();
它已经将 content-type 设置为 json。
如果处理错误,您可以指定 "status" 属性 并将 HttpStatus 设置为 UNAUTHORIZED 、INTERNAL_SERVER_ERROR、BAD_REQUEST 等
所以您只需要使用内置的快速功能,它会为您完成所有工作。
我有一个 API 范围,我将 REST 概念与 express 结合使用。您已经使用 Sequelize 为数据库创建了 ORM。
关注下面的link:
我正在用 express/node 设计一个 API,我想知道是否需要为请求和/或响应显式设置 headers 或者是自动处理?正如我刚刚阅读的 RESTFUL API 最佳实践的以下内容:
使用 HTTP headers 作为序列化格式
客户端和服务器都需要知道使用哪种格式进行通信。必须在 HTTP-Header.
中指定格式Content-Type 定义请求格式。 Accept 定义了可接受的响应格式列表。
https://blog.mwaysolutions.com/2014/06/05/10-best-practices-for-better-restful-api/
但是我不确定这在实践中真正意味着什么。
app.delete('/LimeLINE/api/v1/users/delete/:boolean', (req, res) => {
let inactive;
try {
inactive = req.params.boolean
} catch (e) {
log('e', 'app.delete(/LimeLINE/api/v1/users/delete/:boolean - e - 291 : ' + e)
return res.status(500).send({
message: "INTERNAL SERVER ERROR"
})
}
//res.setHeader('Content-Type', 'application/json');
user.deleteInActive(inactive, res)
})
如果您使用的是 Express,那么它已经为您做了很多工作。因此,您不需要在 header 中指定 content-type,因为它已经提供了方法并处理了大部分 header 部分 例如:res.json(); 它已经将 content-type 设置为 json。
如果处理错误,您可以指定 "status" 属性 并将 HttpStatus 设置为 UNAUTHORIZED 、INTERNAL_SERVER_ERROR、BAD_REQUEST 等
所以您只需要使用内置的快速功能,它会为您完成所有工作。
我有一个 API 范围,我将 REST 概念与 express 结合使用。您已经使用 Sequelize 为数据库创建了 ORM。
关注下面的link: