websockets socket proxy is usually the answer. I do that for talking to my lightning node from the browser. although cln has full support for websockets as well which is nice for non proxies connections.
Discussion
> websockets socket proxy is usually the answer
I think it's part of the solution, except for this: if the user has to run the proxy, it's much less effective as a browser wallet. You might as well just "install" a wallet. That's why I wonder if any bitcoin nodes are running a generic websockets-to-tcp proxy like Websockify in front of their bitcoin node. If they are, then I can design a web wallet which gets block data from *them,* that way the user doesn't need to run a full node -- they'll just download data from other nodes, the same way "thin" bitcoin clients are supposed to do.
Nice! We need full SPV with merkel proofs, imho.