You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
create a controller + endpoint that takes a ServerRequest as a parameter
call bodyToMono on the ServerRequest then map it to a ServerResponse
with an http2 client, call the endpoint without providing any body (data frame)
Possible Solution
I am not fluent enough with HTTP2 to know whether or not the behavior is "expected" or not, but I think there are different answer for different cases:
GET method: Why would I call bodyToMono on a GET? Well, spec-wise, nothing forbid a GET header followed by a data frame
POST method:
Content-length=0 : This is the most problematic case for me. Even though my header frame specifies that the content length is 0, the bodyToMono still waits for data.
Content-length=X : This case is more touchy. This is clearly a client error as we said to expect some data, but none are coming. Should we still wait endlessly for the data? I don't know... And I don't know how we could detect that
Your Environment
OS: Xubuntu 19.04 64bits 5.0.0-31-generic
JVM: openjdk version "11.0.4" 2019-07-16
Reactor: 3.3.0.M1
Spring-boot: 2.2.0.M6
Reactor-netty: 0.9.0.RC1 (note: can't test on 0.9.0.RELEASE due to #864 )
Netty: 4.1.39.Final
The text was updated successfully, but these errors were encountered:
Expected Behavior
Return an empty mono, or an error mono
Actual Behavior
ServerRequest.bodyToMono waits indefinitely for data
Steps to Reproduce
Possible Solution
I am not fluent enough with HTTP2 to know whether or not the behavior is "expected" or not, but I think there are different answer for different cases:
Your Environment
OS: Xubuntu 19.04 64bits 5.0.0-31-generic
JVM: openjdk version "11.0.4" 2019-07-16
Reactor: 3.3.0.M1
Spring-boot: 2.2.0.M6
Reactor-netty: 0.9.0.RC1 (note: can't test on 0.9.0.RELEASE due to #864 )
Netty: 4.1.39.Final
The text was updated successfully, but these errors were encountered: