node.js - 微信小程序后臺(tái) apache 反向代理 nodejs ,上傳無效文件時(shí),返回錯(cuò)誤響應(yīng)?
問題描述
微信開發(fā)工具返回正常
{ code: 2, msg: ’無效的文件’ }
微信客戶端返回
Bad Gateway! The proxy server received an invalid response from anupstream server.
apache
httpd-ssl.conf
<VirtualHost _default_:443> ProxyPass /mina http://127.0.0.1:3000 ProxyPassReverse /mina http://127.0.0.1:3000 SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1</VirtualHost>
node
koa 框架
koa-multer 中間件,處理上傳文件
文件過大或類型錯(cuò)誤時(shí),拋出錯(cuò)誤
處理錯(cuò)誤中間件
async function errorHandler (ctx, next) { try { await next() } catch (err) { let msg = parseError(err) ctx.body = { code: 2, msg } ctx.type = ’application/json’ }}
問題解答
回答1:找到原因了,是pm2的關(guān)系,一拋錯(cuò)誤就重啟,catch也沒用,微信開發(fā)工具和客戶端,網(wǎng)絡(luò)處理應(yīng)該不一樣
