【问题标题】:Handle diff content type in node application在节点应用程序中处理差异内容类型
【发布时间】:2016-01-11 04:50:16
【问题描述】:

我正在 nodejs 中开发一个 api,它将被不同的应用程序使用。不同的应用程序将使用不同的内容类型进行调用。我已经使用 body-parser 来解析 req 数据。

我喜欢有一些中间件来处理内容类型并以一致的格式转换数据,以便我的控制器能够正常工作。

如果使用 'text/plain;charset=UTF-8' 进行调用,那么在调用我的控制器之前,我必须将数据解析为 json 格式

我还必须在发送数据之前添加一些编码。在同一个函数中,我也会解码我的数据

请帮我解决这个问题。

【问题讨论】:

  • req.headers['content-type'] 将为您提供该标头的值,然后您必须使用条件/开关来确定要做什么。

标签: node.js express content-type body-parser


【解决方案1】:

将此函数添加到 server.ts 以处理不同的响应类型

app.use(function(req, res, next) {
    if (req.headers['content-type'] == "text/plain;charset=UTF-8") {
        req.body = JSON.parse(req.body)
    }
    return next();
});

【讨论】:

    猜你喜欢
    • 2012-10-10
    • 1970-01-01
    • 1970-01-01
    • 2010-12-25
    • 1970-01-01
    • 2012-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多