Adding utility methods for parsing webhooks #208
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
ASP.NET / ASP.NET Core doesn't do the best job of handling the webhooks inbound from Vonage. This is mostly because we use
-
and_
characters in our webhook structs. This update is adding a utility library to allow users to parse webhooks easily from the common endpoints they would be using.For reference the two main entry points I see are:
We support 3 content types for our webhooks as best I can gather
ParseQuery
to handle the ASP.NET Core MVCRequest.Query
property inbound to the controller. I've also addedParseQueryNameValuePairs
to handle the LegacyRequest.GetQueryNameValuePairs()
from ASP.NET Classicin the case of both 2 and 3 I've added
ParseWebhook
methods that access the HttpRequestMessage (from the legacy ASP.NET implementation) as well as a raw stream and content type for the ASP.NET Core implementation. As both methods access the underlying stream from the request I've added async implementations for them as well.