一.使用 AFNetworking 第三方(OC 混編)
1. 導入 AFNetworking 第三方
2. 建立 Swift 與 OC 的橋接頭文件
3. 在操作的 VC 中實現代碼
在 viewDidLoad 方法中
let parameters = [
"Id": "150529162646"
]
WZYNetworkTool.shareInstance.request(requestType: .Get, url: kUrl, parameters: parameters, succeed: { (response) in
guard let dicArray = response else {
return
}
print(dicArray)
}) { (error) in
guard let error = error else {
return
}
print(error)
}
}
1
2
3
4 可能這種理解會有bug
二. 使用 Alamofire 第三方 ( Swift )
**前去下載最新的 Alamofire 第三方
part1: 導入工程:
1. 根據前面下載一個版本的 Alamofire 文件~
2. 新建一個工程~
3.拷貝 Alamofire 文件到我們新建的工程中~
4.添加文件到我們自己的工程中~
5.檢查一下我們靜態庫有沒有加到工程~沒有的話我們手動添加一下~
結果應該是這樣:
6.導入頭文件import Alamofire檢查是否配置錯誤~這裏可能沒有提示~直接敲完~編譯一下就OK了~
part2: 使用 Alamofire
func methodForSwift() -> Void {
// let urlStr = "\(SERVICE_URL)type=\(TOP)&key=\(APPKEY)"
let kUrl = "http://community.alllu.com/?api-threadList"
let parameters = [
"pag": "2",
"id": "144f248abf9789911c8ab1e903ec0f10"
]
Alamofire.request(kUrl, method: .post, parameters: parameters).responseJSON { (returnResult) in
print("secondMethod --> 參數 --> returnResult = \(returnResult.value as Any)")
//字典接收 JSon 數據
let dataDict = returnResult.value as! [String : Any] ;
//從字典中根據 key 提取 value 爲數組的數據
let dataArr = dataDict["data"] as! [Any];
for dic in dataArr{
print("title 數值: ",dic);
//從數組中提取字典
let anDict = dic as! [String : Any];
//從字典中提值
let userFaceStr = anDict["userFace"] as! String ;
print("提取單個圖片=地址: ",userFaceStr);
let picStr = anDict["userFace"] as! String ;
let titleStr = anDict["title"] as! String ;
self.titleArr.append(titleStr);
self.picArr.append(picStr);
}
// print("title 數租: ",self.titleArr);
//主線程刷新 UI
DispatchQueue.main.async {
self.makeTable();
self.forInArrayHandel();
}
}
}
參考於:笨笨編程