This ensures we handle 204 and 304 status codes correctly in API routes.
## Bug
- [x] Related issues linked using `fixes #number`
- [x] Integration tests added
- [x] Errors have helpful link attached, see `contributing.md`
Fixes: https://github.com/vercel/next.js/issues/28464
This PR adds a warning when api responses exceed 5mb since this will end up failing once deployed. In a future version this scenario will throw an error.
## Bug
- [x] Integration tests added
## Documentation / Examples
- [x] Make sure the linting passes
* Add flag to disable API warning
This flag is useful when you are using an external API resolver like express when defining an API route, since the native functionality doesn't realize that the API actually sent a response.
A very simple use case example https://github.com/PabloSzx/next-external-api-resolver-examplefixes#10589
* Update api-middlewares.md
Co-authored-by: Tim Neutkens <tim@timneutkens.nl>
* Add error when API resolves without the request being finished
* Update to only show warning in development instead
* Update packages/next/next-server/server/api-utils.ts
Co-authored-by: Joe Haddad <timer150@gmail.com>
This PR introduces the possibility to change the size of the parsed body. This brings features like:
- Adjusting the size of the incoming message
- Better security
* Update helper function to invoke only on get
* Tests for body parsing
* Update api-utils.ts
* Update next-server.ts
* Update packages/next-server/server/next-server.ts
Co-Authored-By: JJ Kasper <jj@jjsweb.site>
* Cookies and Query parsing for API request
* Adding JSON and SEND
* First body parsing
* Body parsing
* Remove extra try catch
* Fix tests
* Only server bundling for API routes
* Update packages/next-server/server/api-utils.ts
Co-Authored-By: Tim Neutkens <tim@timneutkens.nl>
* Revert on demand server changes
* Use content-type for parsing
* Update packages/next-server/server/api-utils.ts
Co-Authored-By: Jan Potoms <potoms.jan@gmail.com>
* Add tests for server compilation
* Add body limit
* Change API to function chaining
* Limit test