Sem descrição

tnantoka 2504612c41 Fix shareFilesFromDirectory with percent encoded path há 9 anos atrás
Sources 2504612c41 Fix shareFilesFromDirectory with percent encoded path há 9 anos atrás
XCode a90a1112f4 Remove external parameter name from IBAction há 9 anos atrás
.gitignore e247459549 Add Packages/ to gitignore há 10 anos atrás
.swift-version 314f942760 Changed version to 1.3.2. Fixed cocoa pods lint. há 9 anos atrás
.swiftlint.yml b983458f61 Add Swiftlint config file há 10 anos atrás
LICENSE c990b5c0e3 Initial commit há 12 anos atrás
Package.swift f42a37e7d5 Changed Lock to "NSLock" for Swift 2.2.x. há 10 anos atrás
README.md dbf8169cde Update README.md há 9 anos atrás
Swifter.podspec 06631d6965 Version changes to 1.3.3. há 9 anos atrás

README.md

Platform Swift Protocols [CocoaPods]() Carthage Compatible

What is Swifter?

Tiny http server engine written in Swift ( https://developer.apple.com/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)
    ]
)