http网络服务-swift-Alamofire

依赖库的github地址

http网络库
Alamofire

解json
SwiftyJSON

Swift Package Manager集成依赖库

swift 复制代码
https://github.com/Alamofire/Alamofire.git

https://github.com/emqx/CocoaMQTT.git

使用

swift 复制代码
import Alamofire
import SwiftyJSON

var http = "http://xxxxxxxx"
var post = "xxx/xxx"
var url: String {http + post}

func action() {
	// 请求参数
    let a: [String: String] = [
        "name": "anna",
        "gender": "girl"
    ]
    
	// 改操作限时3s(request中的参数可以根据需求进行更改)
    AF.request(url, method: .post, parameters: a, encoder: JSONParameterEncoder.default, requestModifier: { $0.timeoutInterval = 3 }).response { response in
        switch response.result {
        case .success(let data):
            if let data = data, let responseString = String(data: data, encoding: .utf8) {
                let jsonData = responseString.data(using: .utf8)
                // 解json
                let json = JSON(jsonData)
                // 假设json里面有一个code元素
                let code = json["code"].intValue
                // 假设json里面有一个数组a,数组a中有一元素b
                let c = json["a"]["b"].stringValue

                // 打印整个json
                print(json)
            }
            
            
        case .failure(let error):
        	// 超时或失败,打印错误
            print("Error: \(error)")
        }
    }
}
相关推荐
车载测试工程师3 小时前
汽车功能安全-嵌入式软件测试(软件合格性测试)【目的、验证输入、集成&验证要求】11
功能测试·网络协议·测试工具·安全·车载系统·汽车·测试覆盖率
IPdodo全球网络服务5 小时前
什么是IP关联?跨境卖家如何有效避免IP关联?
网络·网络协议·tcp/ip
kfepiza7 小时前
`nmcli con add type vlan`中的: `ifname` , `dev` ,`vlan.parent`, `id`,`vlan.id`
linux·网络协议·tcp/ip
kfepiza7 小时前
Linux的NetworkManager的`nmcli connection add` 笔记250712
linux·网络协议·tcp/ip
敲上瘾7 小时前
传输层协议UDP原理
linux·c语言·网络·网络协议·udp
杂雾无尘1 天前
Swift 5.9 新特性揭秘:非复制类型的安全与高效
ios·swift·apple
程序小武1 天前
网络请求的基本概念、原理及生活化解析
网络协议
甘露寺1 天前
HTTP 请求体类型详解:选择最适合的数据提交格式
网络·网络协议·http
傻啦嘿哟1 天前
长效住宅代理IP:反爬虫战场上的隐形盾牌
爬虫·网络协议·tcp/ip
刘坤151 天前
封装axios二方包
前端·http