-
Notifications
You must be signed in to change notification settings - Fork 157
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
Implicit Request interface extension causes error 'property rawBody does not exist on type' #198
Labels
Comments
dobromyslov
changed the title
Implicit Request interface extension causes error property rawBody does not exists on type
Implicit Request interface extension causes error 'property rawBody does not exists on type'
Aug 14, 2020
dobromyslov
changed the title
Implicit Request interface extension causes error 'property rawBody does not exists on type'
Implicit Request interface extension causes error 'property rawBody does not exist on type'
Aug 14, 2020
Hey @dobromyslov, yeah that does look like an error with the TS interfaces. I believe this workaround was just to fix the TS compiler, I don't think we really expected anybody to use our Want to send a PR, just changing the interfaces? |
Yes, I will prepare PR and send it in a couple of days. I implemented custom handling of rawBody in TypeScript and found this issue. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Cloud functions implicitly extend express Request interface with rawBody (see https://github.com/GoogleCloudPlatform/functions-framework-nodejs/blob/master/src/invoker.ts#L44):
I get error
Property 'rawBody' does not exist on type 'Request<ParamsDictionary>'
when implement handler which uses Request.rawBody attribute like below:As a workaround I have to create and use my own type instead of native Express Request:
If you have a look at the
firebase-functions
repository then you will see they use explicit extension of Request interface and then use it in code (https://github.com/firebase/firebase-functions/blob/master/src/providers/https.ts#L33)I think
functions-framework-nodejs
should change implicit interface extension to explicit and provide stand-alone Request with rawBody attribute to avoid this workaround mess in depended applications code.The text was updated successfully, but these errors were encountered: