Webcraft
ES | EN Play

Joining a Java server from your browser

This client speaks the Minecraft: Java Edition protocol and can join existing servers. But there is a technical obstacle between a browser and an ordinary server that is worth understanding, because it explains nearly every failed connection.

Why a proxy is needed

A Java server listens on a plain TCP connection. A web page cannot open a TCP connection: by design, the browser only lets it speak HTTP and WebSocket. That is not a limitation of this project, it is a security rule of the web itself, and there is no way around it from a tab.

The answer is a middleman. The proxy is a small service that accepts a WebSocket connection from your browser and, on the other side, opens the real TCP connection to the server you want to join. It translates in both directions and stays out of the way. The server sees an ordinary connection and needs to know nothing about any of this.

The client ships with a proxy configured by default, but it is an editable field on the connection screen: you can point it somewhere else, or at your own if you would rather not depend on a third party.

Which servers work

What does not work

The proxy sees your game traffic. It is a middleman, with everything that implies. If you are joining a server where you have something to lose, use a proxy you run yourself or one you genuinely trust.

Limitations you will notice

Added latency. Your connection takes a detour: browser to proxy to server. If the proxy is far from you or from the server, milliseconds add up. For building and exploring it makes no difference; in combat you will feel it.

Shared capacity. A public proxy is used by a lot of people at once. At peak times it can get worse or turn connections away. That is not a fault of the server you are trying to join.

Differences from the desktop client. This is a reimplementation of the client, not the original game recompiled. Some features do not exist yet or behave differently, and servers with a lot of interface plugins are the ones that show it most.

If it will not connect

Check the obvious first: that the address and the port are right, and that the server is up and on a supported version. Then try another proxy, because a good number of failures belong to the middleman and not to the destination. If the server has a whitelist, make sure the name you are joining with is the one that is allowed. And if the server publishes a wss:// address, use it: it saves you the proxy entirely.

If what you want is to play with friends without depending on any public server, there is a shorter route: a P2P connection. And if you would rather have a genuine Java server running on your own PC, there is the Windows Helper.