I have a barely working HTTP proxy in client-side-JavaScript here: <a href="https:&#x2F;&#x2F;github.com&#x2F;ysangkok&#x2F;browser-http-proxy" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ysangkok&#x2F;browser-http-proxy</a><p>This allows you to connect to CORS enabled sites without using the WebSocket proxy. It talks HTTP on the serial port.<p>I want to add SNI support to tlstunnel so that I can tunnel to google.com by navigating to <a href="https:&#x2F;&#x2F;google.com.mydomain&#x2F;" rel="nofollow">https:&#x2F;&#x2F;google.com.mydomain&#x2F;</a> and having the snitunnel tunnel to <a href="http:&#x2F;&#x2F;google.com" rel="nofollow">http:&#x2F;&#x2F;google.com</a> by reading the bottom-level domain names using SNI.<p>Using this with browser-http-proxy, it would be possible to tunnel to HTTP sites on a request-based level (making it easier to scale) and without relying on tun&#x2F;tap on the server. Also it could serve as a fallback for non-CORS enabled hosts.