Vaporシリーズチュートリアル-JSON
1875 ワード
Swift国内コミュニティ:SwiftMic
Vaporは
JSON -> String
{"double":3.14,"object":{"nested":"text"},"int":18,"string":"Hello World","null":null,"bool":false,"array":[null,true,123,"yes"]}
String -> JSON
object(["name": JSON.JSON.string("zzbTest")])
Request
Request BodyにJSONデータが含まれている場合は、直接RequestでJSONデータを取得できます.
Bodyデータが
name = Optional("zzbTest") pwd = Optional("123456")
Response
Responseが返すフォーマットがJSON形式の場合、直接JSONオブジェクトに戻ることができます.
Go to Vaporシリーズチュートリアル-ディレクトリ
Vaporは
JSON
タイプをサポートし、直接使用できます.JSON -> String
let json = try JSON(node: [
"null": nil,
"bool": false,
"string": "Hello World",
"int": 18,
"double": 3.14,
"object": JSON([
"nested": "text"
]),
"array": JSON(node: [nil, true, 123, "yes"])
])
let serialized = try json.makeBytes().string
print("\(serialized)")
しゅつりょく{"double":3.14,"object":{"nested":"text"},"int":18,"string":"Hello World","null":null,"bool":false,"array":[null,true,123,"yes"]}
String -> JSON
let serialized = "{\"name\":\"zzbTest\"}"
let json = try JSON(bytes: serialized.bytes)
print("\(json)")
しゅつりょくobject(["name": JSON.JSON.string("zzbTest")])
Request
Request BodyにJSONデータが含まれている場合は、直接RequestでJSONデータを取得できます.
Bodyデータが
{
"name": "zzbTest",
"pwd": "123456"
}
アクセスlet name = request.data["name"].string
let pwd = request.data["pwd"].string
print("name = \(name)")
print("pwd = \(pwd)")
しゅつりょくname = Optional("zzbTest") pwd = Optional("123456")
Response
Responseが返すフォーマットがJSON形式の場合、直接JSONオブジェクトに戻ることができます.
drop.get("json") { request in
return try JSON([
"name": "zzbTest"
])
}
アクセスhttp://localhost:8080/json
が表示されます{"name":"zzbTest"}
(注意:具体的なアクセスアドレスは実際の構成を主とする)Go to Vaporシリーズチュートリアル-ディレクトリ