File tree Expand file tree Collapse file tree 3 files changed +17
-0
lines changed Expand file tree Collapse file tree 3 files changed +17
-0
lines changed Original file line number Diff line number Diff line change 22
22
"purescript-foreign-object" : " master" ,
23
23
"purescript-maybe" : " master" ,
24
24
"purescript-node-buffer" : " master" ,
25
+ "purescript-node-net" : " master" ,
25
26
"purescript-node-streams" : " master" ,
26
27
"purescript-node-url" : " master" ,
27
28
"purescript-nullable" : " main" ,
Original file line number Diff line number Diff line change @@ -46,6 +46,16 @@ exports.listenSocket = function (server) {
46
46
} ;
47
47
} ;
48
48
49
+ exports . onUpgrade = function ( server ) {
50
+ return function ( cb ) {
51
+ return function ( ) {
52
+ server . on ( "upgrade" , function ( req , socket , buffer ) {
53
+ return cb ( req ) ( socket ) ( buffer ) ( ) ;
54
+ } ) ;
55
+ } ;
56
+ } ;
57
+ } ;
58
+
49
59
exports . setHeader = function ( res ) {
50
60
return function ( key ) {
51
61
return function ( value ) {
Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ module Node.HTTP
10
10
, close
11
11
, ListenOptions
12
12
, listenSocket
13
+ , onUpgrade
13
14
14
15
, httpVersion
15
16
, requestHeaders
@@ -30,6 +31,8 @@ import Data.Maybe (Maybe)
30
31
import Data.Nullable (Nullable , toNullable )
31
32
import Effect (Effect )
32
33
import Foreign.Object (Object )
34
+ import Node.Buffer (Buffer )
35
+ import Node.Net.Socket (Socket )
33
36
import Node.Stream (Writable , Readable )
34
37
import Unsafe.Coerce (unsafeCoerce )
35
38
@@ -67,6 +70,9 @@ type ListenOptions =
67
70
-- | Listen on a unix socket. The specified callback will be run when setup is complete.
68
71
foreign import listenSocket :: Server -> String -> Effect Unit -> Effect Unit
69
72
73
+ -- | Listen to `upgrade` events on the server
74
+ foreign import onUpgrade :: Server -> (Request -> Socket -> Buffer -> Effect Unit ) -> Effect Unit
75
+
70
76
-- | Get the request HTTP version
71
77
httpVersion :: Request -> String
72
78
httpVersion = _.httpVersion <<< unsafeCoerce
You can’t perform that action at this time.
0 commit comments