用expressjs开发接口时遇到bodyparser解析报错,分析报文发现请求头有Content-Encoding: UTF-8,这个其实不是bodyParser问题,是发送请求客户端的问题Content-Encoding是内容编码通常是gzip这些,而不是字符集,bodyParser解决太粗暴直接抛出异常。
解决办法
app.use((req, res, next)=>{
if(req.headers['content-encoding']=='utf-8'){
delete req.headers['content-encoding'];
}
express.json({ limit: "50mb"})(req, res, next);
});