Swift Language
Swift HTTP server di Kitura
Ricerca…
introduzione
Server Swift con Kitura
Kitura
è una struttura web scritta in swift creata per i servizi web. È molto facile da configurare per le richieste HTTP. Per l'ambiente, ha bisogno di OS X con XCode installato o di Linux che esegue swift 3.0.
Ciao domanda mondiale
Configurazione
Per prima cosa, crea un file chiamato Package.swift. Questo è il file che dice al compilatore veloce dove si trovano le librerie. In questo esempio ciao mondo, stiamo usando GitHub repos. Abbiamo bisogno di Kitura
e HeliumLogger
. Inserisci il seguente codice all'interno di Package.swift. Ha specificato il nome del progetto come kitura-helloworld e anche gli URL delle dipendenze.
import PackageDescription
let package = Package(
name: "kitura-helloworld",
dependencies: [
.Package(url: "https://github.com/IBM-Swift/HeliumLogger.git", majorVersion: 1, minor: 6),
.Package(url: "https://github.com/IBM-Swift/Kitura.git", majorVersion: 1, minor: 6) ] )
Quindi, crea una cartella chiamata Sorgenti. Dentro, crea un file chiamato main.swift. Questo è il file che implementiamo tutta la logica per questa applicazione. Inserire il seguente codice in questo file principale.
Importa librerie e attiva la registrazione
import Kitura
import Foundation
import HeliumLogger
HeliumLogger.use()
Aggiungere un router. Il router specifica un percorso, un tipo, ecc. Della richiesta HTTP. Qui stiamo aggiungendo un gestore di richieste GET che stampa Hello world , quindi una richiesta di post che legge il testo in chiaro dalla richiesta e quindi lo rimanda indietro.
let router = Router()
router.get("/get") {
request, response, next in
response.send("Hello, World!")
next()
}
router.post("/post") {
request, response, next in
var string: String?
do{
string = try request.readString()
} catch let error {
string = error.localizedDescription
}
response.send("Value \(string!) received.")
next()
}
Specificare una porta per eseguire il servizio
let port = 8080
Collegare insieme il router e la porta e aggiungerli come servizio HTTP
Kitura.addHTTPServer(onPort: port, with: router)
Kitura.run()
Eseguire
Passare alla cartella principale con il file Package.swift e la cartella Risorse. Esegui il seguente comando. Il compilatore Swift scaricherà automaticamente le risorse menzionate in Package.swift nella cartella Pacchetti, quindi compila queste risorse con main.swift
swift build
Al termine della costruzione, l'eseguibile verrà posizionato in questa posizione. Fare doppio clic su questo file eseguibile per avviare il server.
.build/debug/kitura-helloworld
Convalidare
Aprire un browser, digitare localhost:8080/get
come url e premere invio. Dovrebbe uscire la pagina del mondo Hello.
Aprire un'app di richiesta HTTP, inviare testo normale a localhost:8080/post
. La stringa di risposta mostrerà il testo inserito correttamente.