gpt4 book ai didi

json - Node.js Express3 到 Express4 迁移 - 解析器使用

转载 作者:太空宇宙 更新时间:2023-11-04 00:32:08 25 4
gpt4 key购买 nike

我的基于 Node 的服务器使用 Express。服务器处理仅 json 路由和使用多部分表单的文件上传路由。使用 Express3 时,内置解析器正在解析两种路由。我正在迁移到 Express4。我必须切换到 Express4 的主体解析器仅解析 json。我正在使用 multer 解析器来解析文件上传。

对于每个路由,我指定要使用的解析器,如下所示:

var express = require('express');
var bodyParser = require('body-parser');
var multer = require('multer');

var jsonParser = bodyParser.json();
var upload = multer({dest : 'upload/' });
var uploadParser = upload.any();
var app = express();

// json route handling
app.post('json_only_route', jsonParser, function(req, res) {...});

// upload route handling
app.post('upload_route', uploadParser, function(req, res) {...});

或者,对于仅解析 json,我也可以使用 multer 解析器,如下所示:

var jsonParserMulter = uploadParser.none();

// json route handling
app.post('json_only_route', jsonParserMulter, function(req, res) {...});

是否有理由使用一种方法而不是另一种方法? “body-parser”对于仅解析 json 会提供更好的性能吗?

最佳答案

看来 multer 不支持 JSON。通过使用 uploadParser.none() 它只会将 JSON 作为字符串传递。如果您想将 JSON 字符串解析为对象,那么 Express 的 bodyParser.json() 就是您的最佳选择。

关于json - Node.js Express3 到 Express4 迁移 - 解析器使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40579244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com