gws v1.6.0 更新: 客户端支持通过代理拨号

lxzan · 2023-06-13 09:44:40 · 1556 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2023-06-13 09:44:40 的主题,其中的信息可能已经有所发展或是发生改变。

通过 NewDialer 选项设置拨号器, 推荐使用socks5 代理. 需要引入 golang.org/x/net/proxy, 代码示例如下:

package main

import (
    "crypto/tls"
    "github.com/lxzan/gws"
    "golang.org/x/net/proxy"
    "log"
)

func main() {
    socket, _, err := gws.NewClient(&Handler{}, &gws.ClientOption{
        Addr:      "wss://example.com/connect",
        TlsConfig: &tls.Config{InsecureSkipVerify: true},
        NewDialer: func() (gws.Dialer, error) {
            return proxy.SOCKS5("tcp", "127.0.0.1:1080", nil, nil)
        },
    })
    if err != nil {
        log.Println(err.Error())
        return
    }
    socket.ReadLoop()
}

type Handler struct{}

func (h Handler) OnOpen(socket *gws.Conn) {}

func (h Handler) OnClose(socket *gws.Conn, err error) {}

func (h Handler) OnPing(socket *gws.Conn, payload []byte) {}

func (h Handler) OnPong(socket *gws.Conn, payload []byte) {}

func (h Handler) OnMessage(socket *gws.Conn, message *gws.Message) {}
开源不易, 感觉不错的话点个 star 支持吧

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1556 次点击  ∙  1 赞  
加入收藏 微博
2 回复  |  直到 2023-06-13 21:01:20
hshd123
hshd123 · #1 · 2年之前

牛逼呀,大佬

lxzan
lxzan · #2 · 2年之前
hshd123hshd123 #1 回复

牛逼呀,大佬

谢谢

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传