How to obtain a SessionID , that is always empty ctx.Value(runtime.RUNTIME_CTX_SESSION_ID).(string)
Is the RPC being called from an authenticated client? How are you invoking the RPC?
Will it have an impact if the FRPS internal network penetrates and jumps
Can you please provide the versions of the SDK and Nakama you’re using? I can’t see a reason why it would be empty.
After further inspection, the way you’re setting up the socket seems incorrect. Please have a look at our docs, you need to authenticate the user in some way to get a session and then use the session when creating the socket.
Looks correct, are you sure your custom server code is being loaded correctly? Could you share where in the server code you’re calling
ctx.Value(runtime.RUNTIME_CTX_SESSION_ID) and how you’re registering that function?
It’s likely there’s something wrong with the RPC code you’re registering or how you’re invoking the RPC via the websocket connection.