github.com/button-chen/websocketproxy

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/button-chen/websocketproxy

v0.0.0-20180406062846-90a53369f478
98

Supply Chain Security

100

Vulnerability

100

Quality

100

Maintenance

100

License

Network access

Supply chain risk

This module accesses the network.

Found 1 instance in 1 package

Version published
Created

WebsocketProxy GoDoc Build Status

WebsocketProxy is an http.Handler interface build on top of gorilla/websocket that you can plug into your existing Go webserver to provide WebSocket reverse proxy.

Install

go get github.com/button-chen/websocketproxy

Example

Below is a simple server that proxies to the given backend URL

package main

import (
	"flag"
	"net/http"
	"net/url"

	"github.com/button-chen/websocketproxy"
)

var (
	flagBackend = flag.String("backend", "", "Backend URL for proxying")
)

func main() {
	u, err := url.Parse(*flagBackend)
	if err != nil {
		log.Fataln(err)
	}
	proxy := websocketproxy.NewProxy()
	proxy.AddBackend(u)
	err := http.ListenAndServe(":80", proxy)
	if err != nil {
		log.Fataln(err)
	}
}

Save it as proxy.go and run as:

go run proxy.go -backend ws://example.com:3000

Now all incoming WebSocket requests coming to this server will be proxied to ws://example.com:3000

FAQs

Package last updated on 06 Apr 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts