swift 服务端要求json对象怎么办
答案:1 悬赏:50 手机版
解决时间 2021-03-15 07:52
- 提问者网友:聂風
- 2021-03-14 14:14
swift 服务端要求json对象怎么办
最佳答案
- 五星知识达人网友:英雄的欲望
- 2021-03-14 15:16
import Foundation
public struct Person: Codable {
public var name = ""
public var age = 0
}假设上面的数据结构,注意用Codable协议。这样就调用编码器将结构数据转化为字符串:
let rocky = Person("Rocky Wei", 24)
let json = JSONEncoder()
let data = try json.encode(rocky)
// 这样就可以使用 URLSession 把这个数据发给服务器了,注意一般需要post方法
// 返回时这样处理JSON结果:
let u = URLRequest(string: url)
u.httpBody = String(validatingUTF8: data)
let config = URLSessionConfiguration.default
let session = URLSession(configuration: config)
let task = session.dataTask(with: u) { data, code, err in
guard let d = data else {
//服务器访问失败
}
do {
let json = try self.jsonDecoder.decode(JSON.self, from: d)
//解码成功
} catch {
//解码失败
}
}
//这里是真正启动的操作
task.resume()
public struct Person: Codable {
public var name = ""
public var age = 0
}假设上面的数据结构,注意用Codable协议。这样就调用编码器将结构数据转化为字符串:
let rocky = Person("Rocky Wei", 24)
let json = JSONEncoder()
let data = try json.encode(rocky)
// 这样就可以使用 URLSession 把这个数据发给服务器了,注意一般需要post方法
// 返回时这样处理JSON结果:
let u = URLRequest(string: url)
u.httpBody = String(validatingUTF8: data)
let config = URLSessionConfiguration.default
let session = URLSession(configuration: config)
let task = session.dataTask(with: u) { data, code, err in
guard let d = data else {
//服务器访问失败
}
do {
let json = try self.jsonDecoder.decode(JSON.self, from: d)
//解码成功
} catch {
//解码失败
}
}
//这里是真正启动的操作
task.resume()
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯