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

FrameLogger doesn't show the received "Data" from the client #1114

Open
siddharthaDevineni opened this issue Nov 25, 2024 · 0 comments
Open

Comments

@siddharthaDevineni
Copy link

siddharthaDevineni commented Nov 25, 2024

Summary

When a client (e.g., an angular client) sends a KeepAlive Frame with Data attached (e.g., clientId) to the RSocket spring-boot server, the server receives it for sure because the "receiving" frame length is more than 14 bytes - in my case, it is 69 bytes. However, the rsocket FrameLogger does not show the received data in the "Data" field; it is always empty. So, I implemented a CustomFrameLogger which shows the Data field with the received data from the client as expected. Is there any other way to show the data in the Data field?

Expected Behavior

When a client sends a KEEPALIVE frame to the server with Data attached to it, the rsocket FrameLogger is expected to show the received Data from the client as shown in the below screenshot:
Screenshot from 2024-11-25 10-39-14

Actual Behavior

Instead, the Data field that is showing is always empty even though the frame's total length is 69 bytes, which is clearly shown in the field Length of FrameLogger (the length of the attached Data that I sent from the client is 54 bytes). That means, the rsocket server apparently receives the data but somehow it is not able to show it in the KEEPALIVE FrameLogger as shown in the below screenshot:
Screenshot from 2024-11-25 10-17-54

Steps to Reproduce

Attach some Data in Buffer to a KeepAlive Frame and send it via the send(Frame) method of a duplex connection from the client.

Possible Solution

Implementation of a CustomFrameLogger in Java and using it to show the received data in the KEEPALIVE frames.

Environment

  • RSocket version(s) used: rsocket-core: 1.1.3, spring-boot-starter-rsocket: 3.3.4, spring-security-rsocket:6.3.3
  • Other relevant libraries versions - rsocket-transport-netty: 1.1.3, netty-core: 1.1.22, reactor-core: 3.6.10
  • Platform (eg. JVM version (java -version): java: openjdk 21.0.5, OpenJDK Runtime Environment (build 21.0.5+11-Ubuntu-1ubuntu124.04)
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

No branches or pull requests

1 participant