[swift-server-dev] HTTP API Review

Chris Bailey BAILEYC at uk.ibm.com
Sun Sep 3 12:51:51 CDT 2017


Hi Georgios:

The protocol which the class needs to implement is 'HTTPRequestHandling' 
but the class can have any name the user wants to use. I agree that for 
the documentation (and the tests!) the use of 'Handler' is confusing and 
could be better. How does the following look as a sample "Hello World" 
app?

import HTTP

class MyServer: HTTPRequestHandling {
    func handle(request: HTTPRequest, response: HTTPResponseWriter ) -> 
HTTPBodyProcessing {
        response.writeHeader(status: .ok)
        response.writeBody("Hello, World!")
        response.done()
        return .discardBody
    }
}

let server = HTTPServer()

try! server.start(port: 8080, handler: MyServer().handle)


Chris



From:   Georgios Moschovitis <george.moschovitis at icloud.com>
To:     Chris Bailey <BAILEYC at uk.ibm.com>
Cc:     swift-server-dev at swift.org
Date:   03/09/2017 07:44
Subject:        Re: [swift-server-dev] HTTP API Review



Had a (very) quick look, and in general it looks OK.
One thing that bothers me in the example is this ***Handler <-> 
***Handling inconsistency..

class SimpleHandler: HTTPRequestHandling

maybe something like

class WebApp: HTTPRequestHandling {
  ...
}

would make it less confusing?

-g.



Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 
741598. 
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-server-dev/attachments/20170903/ae6cfba3/attachment.html>


More information about the swift-server-dev mailing list