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

support invokeXXX method return Response #751

Open
naah69 opened this issue Jun 23, 2022 · 7 comments
Open

support invokeXXX method return Response #751

naah69 opened this issue Jun 23, 2022 · 7 comments
Labels

Comments

@naah69
Copy link

naah69 commented Jun 23, 2022

Describe the proposal

it is not support return Response(with code and headers) in invokeXXX method now.
it just convert body data by jackson and return.(there is a bug that jackson can't convert the string without json format)
image

it is unsupport if somebody need code and header.

i think that it needs deserialize layer and response interface(implement of http and grpc) to adapt.

use the below code to get Response.

invokeMethod(request,TypeRef<Response>)
@skyao
Copy link
Member

skyao commented Jun 30, 2022

I have talked with @naah69 about this issue and agreed with him that Dapr java sdk should support this feature because sometime the user need to get more information from HTTP response (for example, http headers).

This will make dapr java sdk more flexibility.

I will review the PR code.

@naah69
Copy link
Author

naah69 commented Jul 4, 2022

I have talked with @naah69 about this issue and agreed with him that Dapr java sdk should support this feature because sometime the user need to get more information from HTTP response (for example, http headers).

This will make dapr java sdk more flexibility.

I will review the PR code.

Is there any progress?

@artursouza
Copy link
Member

We should create a new API that is HTTP specific instead of having a break change here. This API was originally designed to be protocol agnostic.

@artursouza artursouza added this to the v1.7 milestone Jul 25, 2022
@artursouza artursouza added the P1 label Jul 25, 2022
@yaron2
Copy link
Member

yaron2 commented Jul 25, 2022

We should create a new API that is HTTP specific instead of having a break change here. This API was originally designed to be protocol agnostic.

Using an HTTP client directly (which is the preferred method for service invocation) is essentially HTTP specific and will address the problem described here.

@yaron2
Copy link
Member

yaron2 commented Jul 25, 2022

Discussion here: dapr/dotnet-sdk#526.

cc @rynowak

@artursouza
Copy link
Member

We should create a new API that is HTTP specific instead of having a break change here. This API was originally designed to be protocol agnostic.

Using an HTTP client directly (which is the preferred method for service invocation) is essentially HTTP specific and will address the problem described here.

In Java SDK, we handle serialization on behalf of the user too (differently from .Net SDK). So there is an advantage of letting the SDK handle the abstraction for the user.

@yaron2
Copy link
Member

yaron2 commented Jul 26, 2022

We should create a new API that is HTTP specific instead of having a break change here. This API was originally designed to be protocol agnostic.

Using an HTTP client directly (which is the preferred method for service invocation) is essentially HTTP specific and will address the problem described here.

In Java SDK, we handle serialization on behalf of the user too (differently from .Net SDK). So there is an advantage of letting the SDK handle the abstraction for the user.

Agreed

@artursouza artursouza modified the milestones: v1.7, v1.8 Sep 30, 2022
@artursouza artursouza removed this from the v1.8 milestone Feb 1, 2023
@artursouza artursouza added P2 and removed P1 labels Feb 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants