This change creates a big problem (at least for dart cloud functions): https://github.com/appwrite/appwrite/pull/6317
Change is here: https://github.com/open-runtimes/open-runtimes/blob/2a069cf9bec98e18a096633b5848cde12b4fe319/runtime
By assuming that the body HAS to be json parseable, all cloud functions will throw an error if the request is not json.
So everyone who has existing functions that accept string request bodies or anything not json parsable (or anyone who wants to in the future) can no longer do that.
All changes to make this work going forward require not only backend refactors, but frontend changes too.
It would be really nice if cloud functions stop assuming things like this. The recent big change helped reduce these assumptions by a lot, but this is still an issue.
Opened an issue: https://github.com/appwrite/appwrite/issues/6462
this only applies to functions triggered by event...which in those cases, the body should always be JSON
aahh -- make sense
I thought I was getting this error though not in that situation. I'll triple check and report back.
are you getting a parse error from a user event?
It's not through an error. Thanks for the help. context.req.body is giving me a string, so I'm not sure what to expect. Will body be parsed / not parsed depending on what triggered the execution?
Body will only be parsed as JSON if the content type header is application/json
ahh gotcha -- that makes more sense.
[SOLVED] v1.4.4 Functions Body Parsed / Not Parsed
Recommended threads
- Excessive usage of cloud functions is sl...
I have made almost all my requests through cloud functions and jwt , due to security fears of a user editing a field he is not supposed to . This unfortunately...
- Dart Runtime as Function is missing
Hey guys, I set the _APP_FUNCTIONS_RUNTIMES to dart-3.10 and redeployed the appwrite stack but unfortunately the dart runtime doesnt show up. I copied the val...
- Go 1.25 runtime
So I'm trying to use go 1.25 for my functions and I can only find go-1.23 as a function runtime. So I did some searching and found https://github.com/appwrite/a...