Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow Empty API Body #9838

Merged
merged 1 commit into from
Dec 26, 2019
Merged

Allow Empty API Body #9838

merged 1 commit into from
Dec 26, 2019

Conversation

Timer
Copy link
Member

@Timer Timer commented Dec 26, 2019

This matches the behavior of Express (body-parser) and special-cases an empty body.


Fixes #9127
Fixes #9834

@Timer Timer added this to the 9.1.x milestone Dec 26, 2019
@ijjk
Copy link
Member

ijjk commented Dec 26, 2019

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
zeit/next.js canary Timer/next.js allow-empty-body Change
buildDuration 13.1s 12.9s -178ms
nodeModulesSize 49 MB 49 MB ⚠️ +250 B
Client Bundles (main, webpack, commons)
zeit/next.js canary Timer/next.js allow-empty-body Change
main-HASH.js 18.2 kB 18.2 kB
main-HASH.js gzip 6.44 kB 6.44 kB
webpack-HASH.js 1.53 kB 1.53 kB
webpack-HASH.js gzip 746 B 746 B
4952ddcd88e7..1db6754d3.js 12 kB 12 kB
4952ddcd88e7..54d3.js gzip 4.68 kB 4.68 kB
commons.HASH.js 10.9 kB 10.9 kB
commons.HASH.js gzip 4.06 kB 4.06 kB
de003c3a9d30..17cdc0d60.js 38.3 kB 38.3 kB
de003c3a9d30..0d60.js gzip 13.9 kB 13.9 kB
framework.HASH.js 126 kB 126 kB
framework.HASH.js gzip 39.5 kB 39.5 kB
Overall change 206 kB 206 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary Timer/next.js allow-empty-body Change
main-HASH.module.js 14.4 kB 14.4 kB
main-HASH.module.js gzip 5.42 kB 5.42 kB
webpack-HASH.module.js 1.53 kB 1.53 kB
webpack-HASH..dule.js gzip 746 B 746 B
4952ddcd88e7..b9.module.js 14.9 kB 14.9 kB
4952ddcd88e7..dule.js gzip 5.56 kB 5.56 kB
de003c3a9d30..e3.module.js 33.1 kB 33.1 kB
de003c3a9d30..dule.js gzip 12.5 kB 12.5 kB
framework.HASH.module.js 126 kB 126 kB
framework.HA..dule.js gzip 39.4 kB 39.4 kB
Overall change 189 kB 189 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary Timer/next.js allow-empty-body Change
polyfills-HASH.js 15.3 kB 15.3 kB
polyfills-HASH.js gzip 4.76 kB 4.76 kB
Overall change 15.3 kB 15.3 kB
Client Pages
zeit/next.js canary Timer/next.js allow-empty-body Change
_app.js 2.94 kB 2.94 kB
_app.js gzip 1.33 kB 1.33 kB
_error.js 10.4 kB 10.4 kB
_error.js gzip 4.07 kB 4.07 kB
hooks.js 1.44 kB 1.44 kB
hooks.js gzip 779 B 779 B
index.js 318 B 318 B
index.js gzip 222 B 222 B
link.js 6.88 kB 6.88 kB
link.js gzip 2.93 kB 2.93 kB
routerDirect.js 411 B 411 B
routerDirect.js gzip 283 B 283 B
withRouter.js 421 B 421 B
withRouter.js gzip 282 B 282 B
Overall change 22.8 kB 22.8 kB
Client Pages Modern
zeit/next.js canary Timer/next.js allow-empty-body Change
_app.module.js 1.54 kB 1.54 kB
_app.module.js gzip 757 B 757 B
_error.module.js 7.35 kB 7.35 kB
_error.module.js gzip 3.06 kB 3.06 kB
hooks.module.js 651 B 651 B
hooks.module.js gzip 371 B 371 B
index.module.js 276 B 276 B
index.module.js gzip 212 B 212 B
link.module.js 5.54 kB 5.54 kB
link.module.js gzip 2.49 kB 2.49 kB
routerDirect.module.js 383 B 383 B
routerDirect..dule.js gzip 273 B 273 B
withRouter.module.js 394 B 394 B
withRouter.m..dule.js gzip 272 B 272 B
Overall change 16.1 kB 16.1 kB
Client Build Manifests
zeit/next.js canary Timer/next.js allow-empty-body Change
_buildManifest.js 81 B 81 B
_buildManifest.js gzip 61 B 61 B
_buildManifest.module.js 81 B 81 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 162 B 162 B
Rendered Page Sizes
zeit/next.js canary Timer/next.js allow-empty-body Change
index.html 4.06 kB 4.06 kB
index.html gzip 1.03 kB 1.03 kB
link.html 4.11 kB 4.11 kB
link.html gzip 1.04 kB 1.04 kB
withRouter.html 4.12 kB 4.12 kB
withRouter.html gzip 1.03 kB 1.03 kB
Overall change 12.3 kB 12.3 kB

Serverless Mode (Increase detected ⚠️)
General Overall increase ⚠️
zeit/next.js canary Timer/next.js allow-empty-body Change
buildDuration 13.4s 13.8s ⚠️ +367ms
nodeModulesSize 49 MB 49 MB ⚠️ +250 B
Client Bundles (main, webpack, commons)
zeit/next.js canary Timer/next.js allow-empty-body Change
main-HASH.js 18.2 kB 18.2 kB
main-HASH.js gzip 6.44 kB 6.44 kB
webpack-HASH.js 1.53 kB 1.53 kB
webpack-HASH.js gzip 746 B 746 B
4952ddcd88e7..1db6754d3.js 12 kB 12 kB
4952ddcd88e7..54d3.js gzip 4.68 kB 4.68 kB
commons.HASH.js 10.9 kB 10.9 kB
commons.HASH.js gzip 4.06 kB 4.06 kB
de003c3a9d30..17cdc0d60.js 38.3 kB 38.3 kB
de003c3a9d30..0d60.js gzip 13.9 kB 13.9 kB
framework.HASH.js 126 kB 126 kB
framework.HASH.js gzip 39.5 kB 39.5 kB
Overall change 206 kB 206 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary Timer/next.js allow-empty-body Change
main-HASH.module.js 14.4 kB 14.4 kB
main-HASH.module.js gzip 5.42 kB 5.42 kB
webpack-HASH.module.js 1.53 kB 1.53 kB
webpack-HASH..dule.js gzip 746 B 746 B
4952ddcd88e7..b9.module.js 14.9 kB 14.9 kB
4952ddcd88e7..dule.js gzip 5.56 kB 5.56 kB
de003c3a9d30..e3.module.js 33.1 kB 33.1 kB
de003c3a9d30..dule.js gzip 12.5 kB 12.5 kB
framework.HASH.module.js 126 kB 126 kB
framework.HA..dule.js gzip 39.4 kB 39.4 kB
Overall change 189 kB 189 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary Timer/next.js allow-empty-body Change
polyfills-HASH.js 15.3 kB 15.3 kB
polyfills-HASH.js gzip 4.76 kB 4.76 kB
Overall change 15.3 kB 15.3 kB
Client Pages
zeit/next.js canary Timer/next.js allow-empty-body Change
_app.js 2.94 kB 2.94 kB
_app.js gzip 1.33 kB 1.33 kB
_error.js 10.4 kB 10.4 kB
_error.js gzip 4.07 kB 4.07 kB
hooks.js 1.44 kB 1.44 kB
hooks.js gzip 779 B 779 B
index.js 318 B 318 B
index.js gzip 222 B 222 B
link.js 6.88 kB 6.88 kB
link.js gzip 2.93 kB 2.93 kB
routerDirect.js 411 B 411 B
routerDirect.js gzip 283 B 283 B
withRouter.js 421 B 421 B
withRouter.js gzip 282 B 282 B
Overall change 22.8 kB 22.8 kB
Client Pages Modern
zeit/next.js canary Timer/next.js allow-empty-body Change
_app.module.js 1.54 kB 1.54 kB
_app.module.js gzip 757 B 757 B
_error.module.js 7.35 kB 7.35 kB
_error.module.js gzip 3.06 kB 3.06 kB
hooks.module.js 651 B 651 B
hooks.module.js gzip 371 B 371 B
index.module.js 276 B 276 B
index.module.js gzip 212 B 212 B
link.module.js 5.54 kB 5.54 kB
link.module.js gzip 2.49 kB 2.49 kB
routerDirect.module.js 383 B 383 B
routerDirect..dule.js gzip 273 B 273 B
withRouter.module.js 394 B 394 B
withRouter.m..dule.js gzip 272 B 272 B
Overall change 16.1 kB 16.1 kB
Client Build Manifests
zeit/next.js canary Timer/next.js allow-empty-body Change
_buildManifest.js 81 B 81 B
_buildManifest.js gzip 61 B 61 B
_buildManifest.module.js 81 B 81 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 162 B 162 B
Serverless bundles
zeit/next.js canary Timer/next.js allow-empty-body Change
_error.js 299 kB 299 kB
_error.js gzip 78.8 kB 78.8 kB
hooks.html 4.19 kB 4.19 kB
hooks.html gzip 1.07 kB 1.07 kB
index.js 299 kB 299 kB
index.js gzip 79.1 kB 79.1 kB
link.js 306 kB 306 kB
link.js gzip 81.1 kB 81.1 kB
routerDirect.js 299 kB 299 kB
routerDirect.js gzip 79.1 kB 79.1 kB
withRouter.js 299 kB 299 kB
withRouter.js gzip 79.3 kB 79.3 kB
Overall change 1.51 MB 1.51 MB

Commit: 0c9489a

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

api return Invalid JSON when requested for json Make API endpoint body parser more lax
2 participants