説明なし

Damian Kołakowski 6e996387f1 Merge pull request #277 from jCalaU/stable 8 年 前
Sources 4ba0b5cb69 Fix compilation error on Xcode 9.1 8 年 前
XCode 1c362a9ed3 Add OTHER_SWIFT_FLAGS = "-Xfrontend -warn-long-function-bodies=500" to trace long compilation issues. 8 年 前
.gitignore e247459549 Add Packages/ to gitignore 10 年 前
.swift-version 314f942760 Changed version to 1.3.2. Fixed cocoa pods lint. 9 年 前
.swiftlint.yml b983458f61 Add Swiftlint config file 10 年 前
LICENSE c990b5c0e3 Initial commit 12 年 前
Package.swift f42a37e7d5 Changed Lock to "NSLock" for Swift 2.2.x. 10 年 前
README.md 8abd1341c0 Update README.md 9 年 前
Swifter.podspec 06631d6965 Version changes to 1.3.3. 9 年 前

README.md

Platform Swift Protocols [CocoaPods]() Carthage Compatible

What is Swifter?

Tiny http server engine written in Swift programming language.

Branches

* stable - lands on CocoaPods and others. Supports the latest non-beta XCode and SPM. Stable.

* master - stable branch plus experimental web-framework layer.

* 2.0 - next version of Swifter (async IO). Experimental.

How to start?

let server = HttpServer()
server["/hello"] = { .ok(.html("You asked for \($0)"))  }
server.start()

How to share files?

let server = HttpServer()
server["/desktop/:path"] = shareFilesFromDirectory("/Users/me/Desktop")
server.start()

How to redirect?

let server = HttpServer()
server["/redirect"] = { request in
  return .movedPermanently("http://www.google.com")
}
server.start()

How to HTML ?

let server = HttpServer()
server["/my_html"] = scopes { 
  html {
    body {
      h1 { inner = "hello" }
    }
  }
}
server.start()

How to WebSockets ?

let server = HttpServer()
server["/websocket-echo"] = websocket({ (session, text) in
  session.writeText(text)
}, { (session, binary) in
  session.writeBinary(binary)
})
server.start()

CocoaPods? Yes.

# Use version >= 1.1.0.rc.2 (sudo gem install cocoapods --pre)
use_frameworks!
pod 'Swifter', '~> 1.3.3'

Carthage? Also yes.

# Use version >= 0.18 (https://github.com/Carthage/Carthage/releases/tag/0.18)
github "glock45/swifter" == 1.3.3

Swift Package Manager.

import PackageDescription

let package = Package(
    name: "MyServer",
    dependencies: [
        .Package(url: "https://github.com/httpswift/swifter.git", majorVersion: 1)
    ]
)