当前位置: 首页>>代码示例>>Golang>>正文


Golang Upgrader.CheckOrigin方法代码示例

本文整理汇总了Golang中github.com/gorilla/websocket.Upgrader.CheckOrigin方法的典型用法代码示例。如果您正苦于以下问题:Golang Upgrader.CheckOrigin方法的具体用法?Golang Upgrader.CheckOrigin怎么用?Golang Upgrader.CheckOrigin使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在github.com/gorilla/websocket.Upgrader的用法示例。


在下文中一共展示了Upgrader.CheckOrigin方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: GetConnection

func GetConnection(rw http.ResponseWriter, req *http.Request) (*connection, error) {
	var upgrader = websocket.Upgrader{
		ReadBufferSize:  1024,
		WriteBufferSize: 1024,
	}

	upgrader.CheckOrigin = func(r *http.Request) bool {
		// allow all connections by default
		return true
	}

	conn := &connection{}

	for _, v := range req.Header["Connection"] {
		for _, i := range strings.Split(v, ",") {
			if strings.EqualFold(strings.TrimSpace(i), "upgrade") {
				webConn, err := upgrader.Upgrade(rw, req, nil)
				if err != nil {
					return nil, err
				}

				conn.webConn = webConn
				return conn, nil
			}
		}
	}

	conn.rw = rw
	return conn, nil
}
开发者ID:wlan0,项目名称:host-api,代码行数:30,代码来源:conn.go

示例2: ToWebSocket

func (this *Context) ToWebSocket(upgrader *websocket.Upgrader, header http.Header) (err error) {
	if upgrader == nil {
		upgrader = &websocket.Upgrader{}
		upgrader.CheckOrigin = func(_ *http.Request) bool {
			return true
		}
		upgrader.Error = func(w http.ResponseWriter, r *http.Request, status int, err error) {
			log.Println(err)
			http.Error(w, http.StatusText(status), status)
		}
	}

	this.WebSocket, err = upgrader.Upgrade(this.RootResponse(), this.Request, header)
	return
}
开发者ID:zaolab,项目名称:sunnified,代码行数:15,代码来源:context.go

示例3: newWsHandler

func newWsHandler(c Config, r Responder) *wsHandler {
	u := websocket.Upgrader{}

	if c.Origin != "" {
		originChecker := glob.MustCompile(c.Origin)
		u.CheckOrigin = func(r *http.Request) bool {
			return originChecker.Match(r.Header.Get(headerOrigin))
		}
	}

	return &wsHandler{
		upgrader:  u,
		config:    c,
		responder: r,
	}
}
开发者ID:DmitryDorofeev,项目名称:gws,代码行数:16,代码来源:server.go

示例4: serveWsJson

func (self *websocketStruct) serveWsJson(ctx *httpserver.RequestContext) {

	if ctx.Request.Method != "GET" {
		http.Error(ctx.Writer, "Method not allowed", 405)
		return
	}

	u := new(websocket.Upgrader)
	u.CheckOrigin = func(r *http.Request) bool {
		return true
	}

	ws, err := u.Upgrade(ctx.Writer, ctx.Request, nil)
	if err != nil {
		log.Println(err)
		return
	}
	self.json.onNewConnection(ws)
}
开发者ID:cronosun,项目名称:buranv1,代码行数:19,代码来源:websocket.go

示例5: NewServer

// NewServer returns an instance of a WsServer configuration.
func NewServer(maxbytes int64, bufsize int, checkorigin bool) (error, *Server) {
	if maxbytes < 1 {
		return fmt.Errorf("Server Max Bytes cannot be less than 1, value given: %v", maxbytes), nil
	}

	u := websocket.Upgrader{
		ReadBufferSize:  1024,
		WriteBufferSize: 1024,
	}

	if !checkorigin {
		u.CheckOrigin = checkOriginStub
	}

	s := &Server{
		maxBytes:  maxbytes,
		wsBufSize: bufsize,
		NewConn:   make(chan *Connection, 10),
		upgrader:  u,
	}

	return nil, s
}
开发者ID:Term1nal,项目名称:wsboilerplate,代码行数:24,代码来源:websocket.go


注:本文中的github.com/gorilla/websocket.Upgrader.CheckOrigin方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。