swift 第十课 cocopod 网络请求 Alamofire
这个 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的更多相关文章
- swift项目第十天:网络请求工具类的封装
import UIKit /* 必须先导入头文件:import AFNetworking */ import AFNetworking //MARK:-0:定义枚举:以枚举定义请求网络的get和pos ...
- 用 Swift 编写面向协议的网络请求
和我一起参加9 月 1 日 - 9月 2 日在纽约举办的 Swift 社区庆典
- iOS swift HandyJSON组合Alamofire发起网络请求并转换成模型
在swift开发中,发起网络请求大部分开发者应该都是使用Alamofire发起的网络请求,至于请求完成后JSON解析这一块有很多解决方案,我们今天这里使用HandyJSON来解析请求返回的数据并转化成 ...
- CHNetRequest网络请求
Paste JSON as Code • quicktype 软件的使用 iOS开发:官方自带的JSON使用 JSON 数据解析 XML 数据解析 Plist 数据解析 NetRequest 网络数据 ...
- swift中第三方网络请求库Alamofire的安装与使用
swift中第三方网络请求库Alamofire的安装与使用 Alamofire是swift中一个比较流行的网络请求库:https://github.com/Alamofire/Alamofire.下面 ...
- Swift使用Alamofire实现网络请求
Alamofire是一个用Swift编写的HTTP网络库,由此前热门开源项目AFNetworking的的作者mattt开发,可非常简单地用于异步网络通信. 要获取最新版本的 Alamofire,前往h ...
- Swift基础之使用Alamofire库进行网络请求和断点下载
好久没有写过Swift相关的文章博客了,这里我就展示一下关于使用Alamofire库的方法 1.什么是Alamofire (1)Alamofire 的前身是 AFNetworking.AFNetwor ...
- [Swift通天遁地]四、网络和线程-(4)使用Alamofire实现网络请求
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- [Swift]Alamofire:设置网络请求超时时间【timeout】的两种方式
两种方式作用相同,是同一套代码的两种表述. 第一种方式:集聚. 直接设置成员属性(全局属性),这种方法不能灵活修改网络请求超时时间timeout. 声明为成员属性: // MARK: - 设置为全局变 ...
随机推荐
- - The superclass "javax.servlet.http.HttpServlet" was not found on the Java
网上有很多解决方法,如这种 下面是具体的解决方法:1.右击web工程->属性或Build Path->Java Build Path->Libraries-> Add Libr ...
- linux基础知识和常用命令
1.修改主机名 切换到root,然后执行 vim /etc/sysconfig/network,进入其中,更改hostname即可.insert进入修改,esc+:,wq保存退出. 2.用户切换 普通 ...
- 基于 C++ 的脚本语言 cpps 脚本
cpps 脚本是一个基于 C++ 的脚本语言. 基础语法: if&else 接口说明 根据括号中数据判断执行相关代码. 代码演示 var i = toint(io.getc()); if(i ...
- C# 任务、线程、同步(三)
线程池使用, 线程池中线程均为后台线程 static void Main() { int nWorkerThreads; int nCompletionPortThreads; ThreadPool. ...
- CF786C Till I Collapse 整体二分+根号分治
题意:对于一个序列,假如说一个区间内最多能包含 $k$ 个不同的数,那么这个序列最少会被划分成几个区间 $?$ 输出 $k$ 为 $1\sim n$ 的答案. 我们每次选区间一定是贪心地将这个区间选地 ...
- BZOJ3791 作业 动态规划
你发现染 $k$ 次最多会将这个序列分成 $2k-1$ 段,然后任何 $2k-1$ 段以内的方案一定能被构建出来,所以直接 dp 就好了 #include <bits/stdc++.h> ...
- [HNOI2008] 越狱 快速幂
[HNOI2008] 越狱 快速幂 水.考虑不发生越狱的情况:即宗教相同的都不相邻,一号任意放\(m\)种宗教的人,此后\(n-1\)个房间都放与上一个宗教不同的人,有\(m-1\)种,所以共有\(m ...
- [TJOI2019]唱、跳、rap和篮球
嘟嘟嘟 TJ律师函警告 20分暴力比较好拿,因为每一种学生可以理解为无限多,那么总方案数就是\(C_{n} ^ {4}\),然后我们枚举至少讨论cxk的有几组,容斥即可. 需要注意的是,容斥的时候还要 ...
- Selenium结合BeautifulSoup4编写简单爬虫
在学会了抓包,接口请求(如requests库)和Selenium的一些操作方法后,基本上就可以编写爬虫,爬取绝大多数网站的内容. 在爬虫领域,Selenium永远是最后一道防线.从本质上来说,访问网页 ...
- MySQL数据分析-(9)库操作补充:用户管理和权限管理
大家好,我是jacky,很高兴继续跟大家学习MySQL数据分析实战,本节课的主题是用户管理和权限管理: 在分享之前,jacky在不厌其烦的强调一下:学习任何一门学科和技能,最重要的是捋清逻辑,我们要知 ...