本文整理匯總了Golang中doppler/sinkserver/websocketserver.WebsocketServer.Start方法的典型用法代碼示例。如果您正苦於以下問題:Golang WebsocketServer.Start方法的具體用法?Golang WebsocketServer.Start怎麽用?Golang WebsocketServer.Start使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類doppler/sinkserver/websocketserver.WebsocketServer
的用法示例。
在下文中一共展示了WebsocketServer.Start方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1:
var _ = Describe("WebsocketServer", func() {
var server *websocketserver.WebsocketServer
var sinkManager = sinkmanager.New(1024, false, blacklist.New(nil), loggertesthelper.Logger(), 100, "dropsonde-origin", 1*time.Second, 1*time.Second)
var appId = "my-app"
var wsReceivedChan chan []byte
var connectionDropped <-chan struct{}
var apiEndpoint = "127.0.0.1:9091"
BeforeEach(func() {
logger := loggertesthelper.Logger()
cfcomponent.Logger = logger
wsReceivedChan = make(chan []byte)
server = websocketserver.New(apiEndpoint, sinkManager, 100*time.Millisecond, 100, "dropsonde-origin", logger)
go server.Start()
serverUrl := fmt.Sprintf("ws://%s/apps/%s/stream", apiEndpoint, appId)
websocket.DefaultDialer = &websocket.Dialer{HandshakeTimeout: 10 * time.Millisecond}
Eventually(func() error { _, _, err := websocket.DefaultDialer.Dial(serverUrl, http.Header{}); return err }, 1).ShouldNot(HaveOccurred())
})
AfterEach(func() {
server.Stop()
time.Sleep(time.Millisecond * 10)
})
Describe("failed connections", func() {
It("fails without an appId", func() {
_, connectionDropped = AddWSSink(wsReceivedChan, fmt.Sprintf("ws://%s/apps//stream", apiEndpoint))
Expect(connectionDropped).To(BeClosed())
})
示例2:
goRoutineSpawned.Add(1)
go func() {
goRoutineSpawned.Done()
defer services.Done()
TestMessageRouter.Start(dataReadChannel)
}()
apiEndpoint := "localhost:" + serverPort
TestWebsocketServer = websocketserver.New(apiEndpoint, sinkManager, 10*time.Second, 100, "dropsonde-origin", logger)
services.Add(1)
goRoutineSpawned.Add(1)
go func() {
goRoutineSpawned.Done()
defer services.Done()
TestWebsocketServer.Start()
}()
goRoutineSpawned.Wait()
})
AfterEach(func() {
sinkManager.Stop()
TestMessageRouter.Stop()
TestWebsocketServer.Stop()
services.Wait()
})
It("dumps all messages for an app user", func() {
expectedFirstMessageString := "Some data 1"