Hello World 的应用
组态
首先,创建一个名为 Package.swift 的文件。这是告诉 swift 编译器库所在位置的文件。在这个 hello world 示例中,我们使用 GitHub repos。我们需要 Kitura
和 HeliumLogger
。将以下代码放在 Package.swift 中。它将项目的名称指定为 kitura-helloworld 以及依赖 URL。
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) ] )
接下来,创建一个名为 Sources 的文件夹。在里面,创建一个名为 main.swift 的文件。这是我们为此应用程序实现所有逻辑的文件。在此主文件中输入以下代码。
导入库并启用日志记录
import Kitura
import Foundation
import HeliumLogger
HeliumLogger.use()
添加路由器 Router 指定 HTTP 请求的路径,类型等。这里我们添加一个 GET 请求处理程序,它打印 Hello world ,然后是一个 post 请求,它从请求中读取纯文本然后将其发回。
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()
}
指定运行服务的端口
let port = 8080
将路由器和端口绑定在一起,并将它们添加为 HTTP 服务
Kitura.addHTTPServer(onPort: port, with: router)
Kitura.run()
执行
使用 Package.swift 文件和 Resources 文件夹导航到根文件夹。运行以下命令。Swift 编译器会自动将 Package.swift 中提到的资源下载到 Packages 文件夹中,然后使用 main.swift 编译这些资源
swift build
构建完成后,可执行文件将放置在此位置。双击此可执行文件以启动服务器。
.build/debug/kitura-helloworld
验证
打开浏览器,输入 localhost:8080/get
作为 url 并按 Enter 键。Hello World 页面应该出来了。
打开 HTTP 请求应用程序,将纯文本发布到 localhost:8080/post
。响应字符串将正确显示输入的文本。