Alamofire 网络库,类似于 oc 里面都 AFNetworking
导入就不说了很简单 说一下封装 , get 和 post 直接调用就可以
class NetworkTools: NSObject {
classfuncgetHttp(url:String,
params: [String:Any]?,
success:@escaping FSResponseSuccess,
error:@escapingFSResponseFail) {
AF.request(url,
method: .get,
parameters: params,
encoding:URLEncoding.default
).responseJSON{ (response)in
switchresponse.result{
case.success(letjson):
success((jsonasAnyObject?)! )
case.failure:
letstatusCode = response.response?.statusCode
error("\(statusCode ??0)请求失败")
debugPrint(response.responseasAny)
}
}
}
classfuncpostHttp(url:String,
params: [String:Any]?,
success:@escapingFSResponseSuccess,
error:@escapingFSResponseFail) {
AF.request(url,
method: .post,
parameters: params,
encoding:URLEncoding.default
).responseJSON{ (response)in
switchresponse.result{
case.success(letjson):
success(jsonasAnyObject)
case.failure:
letstatusCode = response.response?.statusCode
error("\(statusCode ??0)请求失败")
debugPrint(response.responseasAny)
}
}
}
publicfuncgetWith(url:String,
params: [String:Any]?,
success:@escapingFSResponseSuccess,
error:@escapingFSResponseFail) {
requestWith(url: url,
httpMethod:0,
params: params,
success: success,
error: error)
}
publicfuncpostWith(url:String,
params: [String:Any]?,
success:@escapingFSResponseSuccess,
error:@escapingFSResponseFail) {
requestWith(url: url,
httpMethod:1,
params: dic,
success: success,
error: error)
}
publicfuncrequestWith(url:String,
httpMethod:Int32,
params: [String:Any]?,
success:@escapingFSResponseSuccess,
error:@escapingFSResponseFail) {
//get
ifhttpMethod==0{
manageGet(url: url, params: params, success: success, error: error)
}else{
managePost(url: url, params: params!, success: success, error: error)
}
}
privatefuncmanagePost(url:String,
params: [String:Any],
success:@escapingFSResponseSuccess,
error:@escapingFSResponseFail) {
AF.request(url,
method: .post,
parameters: params,
encoding:URLEncoding.default).responseJSON{ (response)in
switchresponse.result{
case.success(letjson):
success((jsonasAnyObject?)! )
case.failure:
letstatusCode = response.response?.statusCode
error("\(statusCode ??0)请求失败")
debugPrint(response.responseasAny)
}
}
}
privatefuncmanageGet(url:String,
params: [String:Any]?,
success:@escapingFSResponseSuccess,
error:@escapingFSResponseFail) {
AF.request(url,
method: .get,
parameters: params,
encoding:URLEncoding.default).responseJSON{ (response)in
switchresponse.result{
case.success(letjson):
success((jsonasAnyObject?)! )
case.failure:
letstatusCode = response.response?.statusCode
error("\(statusCode ??0)请求失败")
debugPrint(response.responseasAny)
}
}
}
}
Kingfisher 图片库
使用简单 imageView.kf.setImage(
with:URL(string: anchor.vertical_src),
placeholder:nil
)
网友评论