File tree Expand file tree Collapse file tree 1 file changed +26
-12
lines changed Expand file tree Collapse file tree 1 file changed +26
-12
lines changed Original file line number Diff line number Diff line change @@ -38,6 +38,32 @@ const (
38
38
Closed ReadyState = 3
39
39
)
40
40
41
+ // New creates a new low-level WebSocket. It immediately returns the new
42
+ // WebSocket.
43
+ func New (url string ) (ws * WebSocket , err error ) {
44
+ defer func () {
45
+ e := recover ()
46
+ if e == nil {
47
+ return
48
+ }
49
+ if jsErr , ok := e .(* js.Error ); ok && jsErr != nil {
50
+ ws = nil
51
+ err = jsErr
52
+ } else {
53
+ panic (e )
54
+ }
55
+ }()
56
+
57
+ object := js .Global .Get ("WebSocket" ).New (url )
58
+
59
+ ws = & WebSocket {
60
+ Object : object ,
61
+ EventTarget : util.EventTarget {Object : object },
62
+ }
63
+
64
+ return
65
+ }
66
+
41
67
// WebSocket is a low-level convenience wrapper around the browser's WebSocket
42
68
// object. For more information, see
43
69
// http://dev.w3.org/html5/websockets/#the-websocket-interface
@@ -100,15 +126,3 @@ func (ws *WebSocket) Close() (err error) {
100
126
ws .Object .Call ("close" )
101
127
return
102
128
}
103
-
104
- // New creates a new WebSocket. It immediately returns the new WebSocket.
105
- func New (url string ) * WebSocket {
106
- object := js .Global .Get ("WebSocket" ).New (url )
107
-
108
- ws := & WebSocket {
109
- Object : object ,
110
- EventTarget : util.EventTarget {Object : object },
111
- }
112
-
113
- return ws
114
- }
You can’t perform that action at this time.
0 commit comments