这个 cocopod 真的是不容易,差点就放弃了……

还好,我足够的坚持……

还是首先说下具体的步骤,希望能记得足够的详细……

1.打开终端,cd 到自己项目的文件夹

cd 文件路径

2.执行 vim Podfile ,创建一个podfile 文件,编辑该文件 -》退出

platform :ios, '8.0'
use_frameworks! target 'EZhiChao' do
pod 'Alamofire', '~> 4.4'
pod 'SDWebImage', '~>3.7'
end

3.Pod install 更新 ,静静等待更新完成

4.在 General -> Linked Frameworks andLibraries 中导入

pods_"自己的项目名称".framework

导入成功后,使用 Almofire:

还是建议对这个进行简单的封装,swift 本不用引入头文件的,但是使用framework 的时候,就需要导入下头文件了,如果每次网络请求都要导入这个,就觉的很麻烦,

所以就执行最简单的封装就好:::::图个方便

import UIKit
import Alamofire class NetManager: NSObject {
/*
get 请求
*/
class func getData(url:String,parameters:Dictionary<String,Any>?,success:@escaping ((Any)->Void)) { Alamofire.request(url, method: .get, parameters: nil).responseJSON { (returnResult) in switch returnResult.result{ case .success(let json): success(json) case .failure(let error):
print("url 请求错误 \(url) \n error == \(error)")
break;
}
}
}/*
post 请求
*/
class func postData(url:String,parameters:Dictionary<String,Any>?,success:@escaping ((Any)->Void)){ Alamofire.request(url, method:.post, parameters: parameters).responseJSON {(respose) in switch respose.result { case .success(let json):
success(json) case .failure(let error):
print("url 请求错误 \(url) \n error == \(error)")
}
}
}
}

还有就是接收到json 数据的时候,着实的为难了下,主要是刚刚开始不会swift 的 json 解析,这里一并记录了:::::

  func getData()  {

    let url = String.init(format:"%@%@" ,hostUrlString, "app/all_article")

        NetManager.getData(url: url, parameters:nil) { (respose) in

            print("respose \(respose)")
let dict = respose as! Dictionary<String,AnyObject>
let body = dict["body"] as! Dictionary<String,AnyObject>
let arr = body["list"] as! Array<Dictionary<String, Any>> for dictionary in arr { let model :Model = Model.creatModel(dictionary: dictionary)
self.dataArr.append(model)
self.myTableView.reloadData()
}
}
}

cocopod 暂时写到这里吧,暂时的话,应该够用的了……

由于一直最近网络一直请求错误,发生各种各样的终止,所以就贴一张,http的 报错表格吧——————————

swift 第十课 cocopod 网络请求 Alamofire的更多相关文章

  1. swift项目第十天:网络请求工具类的封装

    import UIKit /* 必须先导入头文件:import AFNetworking */ import AFNetworking //MARK:-0:定义枚举:以枚举定义请求网络的get和pos ...

  2. 用 Swift 编写面向协议的网络请求

    和我一起参加9 月 1 日 - 9月 2 日在纽约举办的 Swift 社区庆典

  3. iOS swift HandyJSON组合Alamofire发起网络请求并转换成模型

    在swift开发中,发起网络请求大部分开发者应该都是使用Alamofire发起的网络请求,至于请求完成后JSON解析这一块有很多解决方案,我们今天这里使用HandyJSON来解析请求返回的数据并转化成 ...

  4. CHNetRequest网络请求

    Paste JSON as Code • quicktype 软件的使用 iOS开发:官方自带的JSON使用 JSON 数据解析 XML 数据解析 Plist 数据解析 NetRequest 网络数据 ...

  5. swift中第三方网络请求库Alamofire的安装与使用

    swift中第三方网络请求库Alamofire的安装与使用 Alamofire是swift中一个比较流行的网络请求库:https://github.com/Alamofire/Alamofire.下面 ...

  6. Swift使用Alamofire实现网络请求

    Alamofire是一个用Swift编写的HTTP网络库,由此前热门开源项目AFNetworking的的作者mattt开发,可非常简单地用于异步网络通信. 要获取最新版本的 Alamofire,前往h ...

  7. Swift基础之使用Alamofire库进行网络请求和断点下载

    好久没有写过Swift相关的文章博客了,这里我就展示一下关于使用Alamofire库的方法 1.什么是Alamofire (1)Alamofire 的前身是 AFNetworking.AFNetwor ...

  8. [Swift通天遁地]四、网络和线程-(4)使用Alamofire实现网络请求

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  9. [Swift]Alamofire:设置网络请求超时时间【timeout】的两种方式

    两种方式作用相同,是同一套代码的两种表述. 第一种方式:集聚. 直接设置成员属性(全局属性),这种方法不能灵活修改网络请求超时时间timeout. 声明为成员属性: // MARK: - 设置为全局变 ...

随机推荐

  1. WPF绑定属性

    1.创建model类 model类要继承接口INotifyPropertyChanged,用于通知客户端属性值已更改 public class StudentModel : INotifyProper ...

  2. 日常note

    1.插入使相同的最少次数 给定两个序列A,B 每次只能进行把一个元素插入特定位置的操作 求至少对A进行多少次才能使A等于B 设A,B的长度为Len,那么答案为 \(Len-LCS(A,B)\) 2.\ ...

  3. BZOJ 4029 [HEOI2015] 定价 ( 数位DP/贪心 )

    前言 最近学了数位DP,感觉挺简单又实用.这道题就比较水,可以用300B的贪心过掉-网上似乎大多是贪心的题解,我就写写DP的做法 题意 给出正整数区间[L,R][L,R][L,R],定义荒谬值为 (去 ...

  4. 四十九. Zabbix报警机制 、 Zabbix进阶操作 、 监控案例

    案例1:实现Zabbix报警功能 案例2:Zabbix自动发现 案例3:Zabbix主动监控 案例4:拓扑图与聚合图形 案例5:自定义监控案例 1 案例1:实现Zabbix报警功能 1.1 问题 沿用 ...

  5. 牛客练习赛53 (C 富豪凯匹配串) bitset

    没想到直接拿 bitset 能过 $10^8$~ code: #include <bits/stdc++.h> #define N 1004 #define setIO(s) freope ...

  6. 「CQOI2006」简单题 线段树

    「CQOI2006」简单题 线段树 水.区间修改,单点查询.用线段树维护区间\([L,R]\)内的所有\(1\)的个数,懒标记表示为当前区间是否需要反转(相对于区间当前状态),下方标记时懒标记取反即可 ...

  7. php win/linux/mac 安装redis扩展或者扩展报错 zend_smart_str.h file not found

    1 windows 安装reids 扩展 根据phpinfo 查看php信息.在pecl.php.net 下载对应的redis扩展版本,放如扩展目录,在php.ini 配置扩展信息,重启服务 2 li ...

  8. cyk追楠神系列一(SDUT3703)

    cyk追楠神系列一 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 众所周知,cyk ...

  9. JS对象-不可扩展对象、密封对象、冻结对象

    不可扩展对象 Object.preventExtensions() 仅阻止添加自身的属性.但属性仍然可以添加到对象原型. 可以用 Object.isExtensible(obj) 来判断对象是否可扩展 ...

  10. laotech老师唠科mac 深入浅出MAC OS X ceshi ruguokeyi

    laotech老师唠科mac 深入浅出MAC OS X http://study.163.com/plan/planLearn.htm?id=1637004#/learn/resVideo?lesso ...