swift5网络请求post代码
时间: 2023-11-13 15:52:58 浏览: 249
以下是一个使用 URLSession 进行 POST 请求的 Swift 代码示例:
```swift
// 创建一个 URL 对象
let url = URL(string: "https://example.com/api/data")
// 创建一个 URLRequest 对象
var request = URLRequest(url: url!)
request.httpMethod = "POST"
// 设置 POST 请求参数
let parameters = ["param1": "value1", "param2": "value2"]
request.httpBody = try? JSONSerialization.data(withJSONObject: parameters, options: [])
// 创建一个 URLSession 对象
let session = URLSession.shared
// 创建一个 URLSessionDataTask 对象
let task = session.dataTask(with: request) { (data, response, error) in
// 处理响应数据或错误信息
if let error = error {
print("Error: \(error)")
return
}
guard let data = data else {
print("Error: No data received")
return
}
// 解码响应数据为 Swift 对象
let decoder = JSONDecoder()
do {
let responseData = try decoder.decode(ResponseData.self, from: data)
// 处理解码后的数据
print(responseData)
} catch let error {
print("Error: \(error)")
}
}
// 开始任务
task.resume()
```
其中,ResponseData 是一个遵循 Codable 协议的 Swift 类型,用于解码响应数据。你需要将 "https://example.com/api/data" 替换为你需要请求的 URL,并将 parameters 替换为你需要发送的 POST 请求参数。
阅读全文