Comments (4)
@felixsanz I think this is co-body's bug that don't catch the error thrown in inflation, and this will be fix in cojs/co-body#54, hope it won't break your code since I'll consider it as a bug fix.
from bodyparser.
because bodyparser's onerror only catch the error thrown when parse the body, so it won't(and shouldn't) catch inflation's error.
this is not related with bodyparser, but if you want to ignore this error, you can try
app.use(async (ctx, next) => {
try {
await next();
} catch (err) {
// your custom error handler
}
});
app.use(bodyparser());
app.use(otherMiddleware());
from bodyparser.
The problem is the inflation lib:
switch (encoding) {
case 'gzip':
case 'deflate':
break
case 'identity':
return stream
default:
var err = new Error('Unsupported Content-Encoding: ' + encoding)
err.status = 415
throw err
}
This code is what is causing an early return (the default
case).
Why the bodyparser promise catch doesn't catch it?
from bodyparser.
I tried to fix it but too many magic libraries involved :( Can someone help please?
This is a workaround:
app.use(async (ctx, next) => {
try {
return bodyParser({
enableTypes: ['text'],
extendTypes: {
text: ['text/html'],
},
})(ctx, next)
} catch (err) {
return ctx.throw(new Error('foo'), 400)
}
})
from bodyparser.
Related Issues (20)
- FormData提交的参数为数组时解析错误 HOT 1
- Not working with Firebase Functions HOT 8
- How can i parser html ? HOT 1
- jsonLimit doesn't seem to work
- Option to disable content-length check on request HOT 2
- Why are you recommending "co-busboy" in koa-bodyparser Readme if there is multer? HOT 3
- can not parse no content-type body HOT 4
- inconsistent parsing behaviour on nested params
- Replace body content HOT 1
- co-busboy does not work very well for koa2 HOT 2
- XML Documentation Incorrect HOT 3
- Why is body typed as string? gives tsc compilation errors HOT 5
- Rewrite to TypeScript HOT 5
- [FR] Recommend koajs/koa-body instead of co-busboy for multipart HOT 1
- please add application/push type HOT 2
- Every example *and* test is reassigning request body to response body HOT 1
- [fix] Type disagreement between `koa-body` and `@types/koa-bodyparser` HOT 3
- [fix] `encoding` is still required in TS even though it has default value from `co-body` HOT 1
- [feat] add koa as peerDependencies
- [fix] npm 和 github README不一致。 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bodyparser.