Skip to content

[ISSUE #5233] Preserve common HTTP JSON payloads#5258

Open
nkgotcode wants to merge 1 commit into
apache:masterfrom
nkgotcode:fix/eventmesh-5233-common-protocol-json
Open

[ISSUE #5233] Preserve common HTTP JSON payloads#5258
nkgotcode wants to merge 1 commit into
apache:masterfrom
nkgotcode:fix/eventmesh-5233-common-protocol-json

Conversation

@nkgotcode

Copy link
Copy Markdown

Fixes #5233

Motivation

The HTTP connector common protocol fails when it receives a JSON object body because the request payload is parsed as a Java String. A JSON object such as {"name":"Andy"} cannot be deserialized that way, so the connector rejects a valid request body.

Modifications

The common HTTP protocol now preserves the raw request body string before enqueuing the WebhookRequest. A regression test starts the Vert.x route through CommonProtocol, posts a JSON object, verifies the HTTP 200 response, and checks that the queued request payload is unchanged.

Validation:

docker run --rm -v "$PWD":/workspace -w /workspace eclipse-temurin:8-jdk ./gradlew :eventmesh-connectors:eventmesh-connector-http:test --tests org.apache.eventmesh.connector.http.source.protocol.impl.CommonProtocolTest --no-daemon --stacktrace
BUILD SUCCESSFUL

Documentation

  • Does this pull request introduce a new feature? no
  • If yes, how is the feature documented? not applicable
  • If a feature is not applicable for documentation, explain why? This fixes request payload handling for an existing connector protocol.
  • If a feature is not documented yet in this PR, please create a followup issue for adding the documentation

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Welcome to the Apache EventMesh community!!
This is your first PR in our project. We're very excited to have you onboard contributing. Your contributions are greatly appreciated!

Please make sure that the changes are covered by tests.
We will be here shortly.
Let us know if you need any help!

Want to get closer to the community?

WeChat Assistant WeChat Public Account Slack
Join Slack Chat

Mailing Lists:

Name Description Subscribe Unsubscribe Archive
Users User support and questions mailing list Subscribe Unsubscribe Mail Archives
Development Development related discussions Subscribe Unsubscribe Mail Archives
Commits All commits to repositories Subscribe Unsubscribe Mail Archives
Issues Issues or PRs comments and reviews Subscribe Unsubscribe Mail Archives

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.

[Bug] http connector in common protocol has a json deserialization error

1 participant