API模板和JSON格式数据
这里主要介绍Api模板。
- 如果服务器给我们一堆二进制乱码那我们很不好工作。所以这里转换成一定格式的字符串给我们。这里就是JSON格式。
在vapor我们可以直接使用JSON()进行创建JSON
drop.get("version") { request in
var json = JSON()
try json.set("version", 1.0)
return json
}
这里主要是我们自定义的model使用JSON
这里我们需要遵从协议 JSONInitializable
和JSONRepresentable
extension User: JSONInitializable {
convenience init(json: JSON) throws {
try self.init(
name: json.get("name"),
age: json.get("age")
)
}
}
extension User: JSONRepresentable {
func makeJSON() throws -> JSON {
var json = JSON()
try json.set("id", id)
try json.set("name", name)
// 这里我们可以对参数进行一定的更改
try json.set("age", age)
return json
}
}