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

Add post-parsing verify function #472

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

jhford-scout24
Copy link

Allow user to specify a function to run on the parsed output. This function gets the req and res as does the normal parsing middlewares but operates on the parsed data.

This patch is only a sketch to illustrate my idea, I haven't implemented tests or anything, but wanted to see if such a feature is of interest to the project. I would also add this functionality to the other parsed body types if the patch is acceptable.

My specific use case is that i want to use bodyparser with json-schema. I wanted to use the verify function option, but in order to do that I would need to reparse the json. I could also wrap the bodyparser middleware in my own middleware, but this is more complicated than adding for example verifyParsed: (rq,rs,b) => {validate(b)} to the bodyparser middleware.

Allow user to specify a function to run on the parsed output.  This
function gets the req and res as does the normal parsing middlewares but
operates on the parsed data.

This patch is only a sketch to illustrate my idea, I haven't implemented
tests or anything, but wanted to see if such a feature is of interest to
the project.

My specific usecase is that i want to use bodyparser with json-schema.
I wanted to use the verify function option, but in order to do that I
would need to reparse the json.  I could also wrap the bodyparser
middleware in my own middleware, but this is more complicated than
adding for example "verifyParsed: (rq,rs,b) => {validate(b)}" to the
bodyparser middleware.
@wesleytodd
Copy link
Member

Hey @jhford-scout24, sorry for the very much delayed response. The express project has struggled with investment for some years now but we are trying to get back on track. I just wanted to drop a note in here though to see if you were still interested in having this conversation. I have some thoughts, but we need to ruthlessly prioritize the required work to get the next majro released, and it is highly unlikely we would land this PR for that. That said, I think I am interested in thinking about this problem space a bit more clearly, and I am interested in express having this type of functionality even if it does not live inside body parser itself. If that is not how you see it being used though I would like to hear that.

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

Successfully merging this pull request may close these issues.

3 participants