Vapor Api模板和JSON's APIs

2018-01-28  本文已影响20人  Vine_Finer

API模板和JSON格式数据

这里主要介绍Api模板。

在vapor我们可以直接使用JSON()进行创建JSON

drop.get("version") { request in
    var json = JSON()
    try json.set("version", 1.0)
    return json
}

这里主要是我们自定义的model使用JSON

这里我们需要遵从协议 JSONInitializableJSONRepresentable

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
    }
}

上一篇 下一篇

猜你喜欢

热点阅读