@@ -9,11 +9,11 @@ import Foundation
99
1010// swiftlint:disable function_body_length
1111public func demoServer( _ publicDir: String ) -> HttpServer {
12-
12+
1313 print ( publicDir)
14-
14+
1515 let server = HttpServer ( )
16-
16+
1717 server [ " /public/:path " ] = shareFilesFromDirectory ( publicDir)
1818
1919 server [ " /files/:path " ] = directoryBrowser ( " / " )
@@ -29,37 +29,37 @@ public func demoServer(_ publicDir: String) -> HttpServer {
2929 }
3030 }
3131 }
32-
32+
3333 server [ " /magic " ] = { . ok( . htmlBody( " You asked for " + $0. path) ) }
34-
34+
3535 server [ " /test/:param1/:param2 " ] = { request in
3636 scopes {
3737 html {
3838 body {
3939 h3 { inner = " Address: \( request. address ?? " unknown " ) " }
4040 h3 { inner = " Url: \( request. path) " }
4141 h3 { inner = " Method: \( request. method) " }
42-
42+
4343 h3 { inner = " Query: " }
44-
44+
4545 table ( request. queryParams) { param in
4646 tr {
4747 td { inner = param. 0 }
4848 td { inner = param. 1 }
4949 }
5050 }
51-
51+
5252 h3 { inner = " Headers: " }
53-
53+
5454 table ( request. headers) { header in
5555 tr {
5656 td { inner = header. 0 }
5757 td { inner = header. 1 }
5858 }
5959 }
60-
60+
6161 h3 { inner = " Route params: " }
62-
62+
6363 table ( request. params) { param in
6464 tr {
6565 td { inner = param. 0 }
@@ -70,19 +70,19 @@ public func demoServer(_ publicDir: String) -> HttpServer {
7070 }
7171 } ( request)
7272 }
73-
73+
7474 server. GET [ " /upload " ] = scopes {
7575 html {
7676 body {
7777 form {
7878 method = " POST "
7979 action = " /upload "
8080 enctype = " multipart/form-data "
81-
81+
8282 input { name = " my_file1 " ; type = " file " }
8383 input { name = " my_file2 " ; type = " file " }
8484 input { name = " my_file3 " ; type = " file " }
85-
85+
8686 button {
8787 type = " submit "
8888 inner = " Upload "
@@ -91,7 +91,7 @@ public func demoServer(_ publicDir: String) -> HttpServer {
9191 }
9292 }
9393 }
94-
94+
9595 server. POST [ " /upload " ] = { request in
9696 var response = " "
9797 for multipart in request. parseMultiPartFormData ( ) {
@@ -100,7 +100,7 @@ public func demoServer(_ publicDir: String) -> HttpServer {
100100 }
101101 return HttpResponse . ok ( . htmlBody( response) )
102102 }
103-
103+
104104 server. GET [ " /login " ] = scopes {
105105 html {
106106 head {
@@ -109,11 +109,11 @@ public func demoServer(_ publicDir: String) -> HttpServer {
109109 }
110110 body {
111111 h3 { inner = " Sign In " }
112-
112+
113113 form {
114114 method = " POST "
115115 action = " /login "
116-
116+
117117 fieldset {
118118 input { placeholder = " E-mail " ; name = " email " ; type = " email " ; autofocus = " " }
119119 input { placeholder = " Password " ; name = " password " ; type = " password " ; autofocus = " " }
@@ -125,20 +125,20 @@ public func demoServer(_ publicDir: String) -> HttpServer {
125125 }
126126 }
127127 }
128-
128+
129129 }
130130 javascript {
131131 src = " http://cdn.staticfile.org/twitter-bootstrap/3.3.0/js/bootstrap.min.js "
132132 }
133133 }
134134 }
135135 }
136-
136+
137137 server. POST [ " /login " ] = { request in
138138 let formFields = request. parseUrlencodedForm ( )
139139 return HttpResponse . ok ( . htmlBody( formFields. map ( { " \( $0. 0 ) = \( $0. 1 ) " } ) . joined ( separator: " <br> " ) ) )
140140 }
141-
141+
142142 server [ " /demo " ] = scopes {
143143 html {
144144 body {
@@ -149,15 +149,15 @@ public func demoServer(_ publicDir: String) -> HttpServer {
149149 }
150150 }
151151 }
152-
152+
153153 server [ " /raw " ] = { _ in
154154 return HttpResponse . raw ( 200 , " OK " , [ " XXX-Custom-Header " : " value " ] , { try $0. write ( [ UInt8] ( " test " . utf8) ) } )
155155 }
156-
156+
157157 server [ " /redirect/permanently " ] = { _ in
158158 return . movedPermanently( " http://www.google.com " )
159159 }
160-
160+
161161 server [ " /redirect/temporarily " ] = { _ in
162162 return . movedTemporarily( " http://www.google.com " )
163163 }
@@ -167,19 +167,19 @@ public func demoServer(_ publicDir: String) -> HttpServer {
167167 for index in 0 ..< 1000 { longResponse += " ( \( index) ),-> " }
168168 return . ok( . htmlBody( longResponse) )
169169 }
170-
170+
171171 server [ " /wildcard/*/test/*/:param " ] = { request in
172172 return . ok( . htmlBody( request. path) )
173173 }
174-
174+
175175 server [ " /stream " ] = { _ in
176176 return HttpResponse . raw ( 200 , " OK " , nil , { writer in
177177 for index in 0 ... 100 {
178178 try writer. write ( [ UInt8] ( " [chunk \( index) ] " . utf8) )
179179 }
180180 } )
181181 }
182-
182+
183183 server [ " /websocket-echo " ] = websocket ( text: { ( session, text) in
184184 session. writeText ( text)
185185 } , binary: { ( session, binary) in
@@ -191,16 +191,15 @@ public func demoServer(_ publicDir: String) -> HttpServer {
191191 } , disconnected: { _ in
192192 // Client disconnected
193193 } )
194-
194+
195195 server. notFoundHandler = { _ in
196196 return . movedPermanently( " https://github.com/404 " )
197197 }
198-
198+
199199 server. middleware. append { request in
200200 print ( " Middleware: \( request. address ?? " unknown address " ) -> \( request. method) -> \( request. path) " )
201201 return nil
202202 }
203-
203+
204204 return server
205205}
206-
0 commit comments