Comments (6)
Now we will need to refactor our previous projects because of this update
Yeah, that is why breaking changes are breaking changes, but previous versions are still available. 🤯
from oak.
Fixed in 43de84a
from oak.
It is the very first point of the release notes listed as:
feat: align request body better to Fetch API (bb996fe)
BREAKING CHANGE Previous versions of oak had a request body API that was
fairly convoluted as oak evolved from the early days of Deno where there
wasn't a built in APIs for handling HTTP requests. The Fetch APIRequest
and
Response
have become the standard almost everywhere and make it easy to get
ahold of a request body in many forms.Inspired by this the
ctx.request.body
aligns to this API for the most part,
but also still retains some of the advantages that oak provided like providing
actx.request.body.type
to help figure out what sort of body you are looking
at as well as support forctx.request.body.form()
.This also leverages native Fetch API where possible which resolved a lot of
issues with decoding multi-part forms. This does mean files that are uploaded
to oak become web standardFile
s that are entries inFormData
. This means
multipart.ts
has been removed from oak and the
Inline API documentation was updated as well.
The README needs to be updated.
from oak.
(Also, the release notes/change log list the other breaking changes in 13)
from oak.
Thank you for pointing out the update in the CHANGELOG.md. I apologize for missing that in my initial review. The only change needed is README to ensure it's immediately visible to new users (like me 😂).
Thanks again for your quick response and for maintaining this project!
from oak.
Now we will need to refactor our previous projects because of this update
from oak.
Related Issues (20)
- No clear guidance on how to create a mock route context with body
- TypeError - ctx.request.body is not a function error while deploying to deno HOT 2
- https support broken since oak@13 HOT 2
- Error in the README: `test()` instead of `text()`
- Typo in README.md
- Use body and relay it via proxy middleware in oak v13+ HOT 1
- Proxied request secure?
- Controllers, why doesn't possible inject with private?
- More typing on Request and Response object? HOT 4
- request.body.text() causes error on localhost HOT 3
- Oak import causes a compiled app to hang HOT 1
- context.request.body is not a function
- How to gracefully exit, when Bun Server does not adhere to AbortSignal? HOT 2
- ctx.request.body is not a function
- Application's State type error HOT 2
- A better way to handle pre-processed bodies by zod / joi / yup / ajv
- Use `:authority` psueod-header on HTTP/2 if available HOT 4
- Support `Forwarded` header as well as `X-Forwarded-*` HOT 1
- Exceptions from AsyncGenerator responses cause the connection to hang HOT 2
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 oak.