Aeon 0.3

Aeon 0.3

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Nov 2015
SPMSupports SPM

Maintained by Paulo Faria.



 
Depends on:
HTTPParser>= 0
GrandCentralDispatch>= 0
TCPIP>= 0
 

Aeon 0.3

  • By
  • Paulo Faria

Aeon

Aeon is a GCD based HTTP server for Swift 2.

Features

  • [x] No Foundation dependency (Linux ready)

Dependencies

Epoch is made of:

Related Projects

Usage

Solo

You can use Aeon without any extra dependencies if you wish.

import HTTP
import Aeon

struct HTTPServerResponder: HTTPResponderType {
    func respond(request: HTTPRequest) -> HTTPResponse {

        // do something based on the HTTPRequest

        return HTTPResponse(status: .OK)
    }
}

let responder = HTTPServerResponder()
let server = HTTPServer(port: 8080, responder: responder)
server.start()

Epoch + HTTPRouter

You’ll probably need an HTTP router to make thinks easier. Aeon and HTTPRouter were designed to work with each other seamlessly.

import HTTP
import HTTPRouter
import Aeon

let router = HTTPRouter { router in
    router.post("/users") { request in
        // do something based on the HTTPRequest
        return HTTPResponse(status: .Created)
    }

    router.get("/users/:id") { request in
        let id = request.parameters["id"]
        // do something based on the HTTPRequest and id
        return HTTPResponse(status: .OK)
    } 
}

let server = HTTPServer(port: 8080, responder: router)
server.start()

Installation

Command Line Application

To use Aeon in a command line application:

License

Aeon is released under the MIT license. See LICENSE for details.