Have you checked out https://connectrpc.com/
We are using this for the basic HTTP server/client compatibility. And that means we can also use from web a context without any proxy setup.
this annoys me as well, why would the app decide to log me out, when it cannot connect to the backend? I have playlists downloaded for this exact reason...