我如何解码以下json数组(属于http请求的一部分)
[
{ "id": 0, "name": "darth maul" },
{ "id": 1, "name": "darth sidious" }
]
具有解码功能的快速蒸气3中的
蒸气代码:
struct User: Content {
var id: Int
var name: String
}
router.put("user") { request -> Future<HTTPStatus> in
return try request.content.decode(User.self).map({ (user) -> (HTTPStatus) in
// process ...
return .ok
})
}
答案 0 :(得分:4)
您的代码已经非常接近了,只需要进行很小的更改:无需解码单个用户,而是解码它们的数组。请注意decode
中的方括号。
router.put("user") { request -> Future<HTTPStatus> in
return try request.content.decode([User].self).map({ (users) -> (HTTPStatus) in
// process ...
return .ok
})
}