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

Alamofire是swift中一个比较流行的网络请求库:https://github.com/Alamofire/Alamofire。下面我们就介绍一个这个库的安装与使用。

一、安装包管理工具CocoaPods

由于国内容易被墙,速度也非常的慢,这里我们使用提供的源 http://ruby.taobao.org/

gem sources --remove https://rubygems.org/
gem sources –a http://ruby.taobao.org/
gem sources –l

先使用下面命令升级Ruby版本:

gem update --system

等待更新完成后。

然后通过gem命令来下载安装CocoaPods:

gem install cocoapods

安装完毕后调用下面命令,进行CocoaPods设置(可通过pod命令查看是否安装成功):

pod setup

执行完成上述命令后,表示安装成功!下面将讲述如何使用CocoaPods。

二、使用CocoaPods下载Alamofire库

我们首先创建一个swift 演示项目,命名为  demo,这时会生成一个项目文件 demo.xcodeproj

我们先看一下是否支持Alamofire三方库

pod search Alamofire

正常情况下,会输出一些有关三方库的信息,还有版本号。

下面重要的工作开始了。

创建一个 Pod 配置文件,文件名为 Podfile, 注意没有扩展名,对于 Podfile 文件的介绍参考:http://blog.haohtml.com/archives/16970

内容如下:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!
target "demo" do
pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :tag => '3.4.0'
end

然后执行安装命令

pod install

成功安装后,会多出一个 demo.xcworkspace 的工程文件,以后我们再开发的话,就需要使用这个文件,弃用原来的demo.xcodeproj 文件了。

此时项目目录如下:

Pods文件夹中存放的就是下载好的第三方依赖库。

打开工程文件  demo.xcworkspace。此时的项目结构如下:

三、Alamofire库的使用

我们打开 ViewController.swift,引入Alamofir库。在文件头部的import UIKit 行下面添加一个“import Alamofire”,一定要进行这一步,不然没有使用库的API的。

然后在 viewDidLoad() 方法中的 super.viewDidLoad() 下面一行,将 https://github.com/Alamofire/Alamofire 其中的一段api代码放进去,然后运行项目,在Xcode的输出面板中可以看到一些相关的信息,说明已经可以正常调用这些api了。

如果我们需要再安装其它库,如布局三方库 SnapKit,先搜索一下

pod search snapKit

结果如下图:

根据提示Podfile中target xxx do ... end 块内添加一行"pod 'SnapKit', '~> 0.14.0'",文件内容如下:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!
target "demo" do
pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :tag => '3.4.0'
pod 'SnapKit', '~> 0.14.0'
end

再执行安装命令

pod install

即可。此时应该在Pods目录里看到SnapKit库了.最后

swift中第三方网络请求库Alamofire的安装与使用的更多相关文章

  1. Alamofire - 优雅的处理 Swift 中的网络操作

    网络处理,应该是我们平时开发的时候最常用到的操作.比如读取 JSON 数据,下载图片,这些操作都要和网络打交道,一个高效稳定的网络操作库对于提升我们日常的开发效率有着非常关键的作用.Alamofire ...

  2. 「Python 编程」编码实现网络请求库中的 URL 解析器

    摘要:怎么写出更短的代码并不是这次要讨论的话题.今天我们来研究一下:运行代码的计算机是如何找到目标服务器的? 相信各位 Python 开发者都用过 Requests 库,有些朋友还用过 WebSock ...

  3. 造轮子 | 怎样设计一个面向协议的 iOS 网络请求库

    近期开源了一个面向协议设计的网络请求库 MBNetwork,基于 Alamofire 和 ObjectMapper 实现,目的是简化业务层的网络请求操作. 须要干些啥 对于大部分 App 而言,业务层 ...

  4. 自己动手写一个iOS 网络请求库的三部曲[转]

    代码示例:https://github.com/johnlui/Swift-On-iOS/blob/master/BuildYourHTTPRequestLibrary 开源项目:Pitaya,适合大 ...

  5. Swift中的HTTP请求

    iOS开发中大部分App的网络数据交换是基于HTTP协议的.本文将简单介绍在Swift中使用HTTP进行网络请求的几种方法. 注意:网络请求完成后会获得一个NSData类型的返回数据,如果数据格式为J ...

  6. 浅论Android网络请求库——android-async-http

    在iOS开发中有大名鼎鼎的ASIHttpRequest库,用来处理网络请求操作,今天要介绍的是一个在Android上同样强大的网络请求库android-async-http,目前非常火的应用Insta ...

  7. [转]Android各大网络请求库的比较及实战

    自己学习android也有一段时间了,在实际开发中,频繁的接触网络请求,而网络请求的方式很多,最常见的那么几个也就那么几个.本篇文章对常见的网络请求库进行一个总结. HttpUrlConnection ...

  8. Android之网络请求库

    自己学习android也有一段时间了,在实际开发中,频繁的接触网络请求,而网络请求的方式很多,最常见的那么几个也就那么几个.本篇文章对常见的网络请求库进行一个总结. HttpUrlConnection ...

  9. 【转载】一步一步搭建自己的iOS网络请求库

    一步一步搭建自己的iOS网络请求库(一) 大家好,我是LastDay,很久没有写博客了,这周会分享一个的HTTP请求库的编写经验. 简单的介绍 介绍一下,NSURLSession是iOS7中新的网络接 ...

随机推荐

  1. iOS--XML三种解析方法( XMLDictionary)、(GDataXMLNode)、(NSXMLParser)

    iOS9之后,默认网络请求是https,所有我们要设置一下网络安全,具体设置如下 1.第三方类库 XMLDictionary 下载地址: https://github.com/nicklockwood ...

  2. 最新中国菜刀caidao-20160620下载和说明

    0x00 中国制造, 黑客之刀 中国菜刀是中国安全圈内使用非常广泛的一款Webshell管理工具,此次老兵大牛进行了更新,界面更加优美,功能更加丰富,有图有真相! 0x01 验证 此次更新还自带了官网 ...

  3. 面试题整理:C#(二)

    1.类,接口的区别 从定义的角度类描述一个实体,包括状态.属性和动作接口定义一类动作,没有实现,也没有状态信息从程序的角度接口是函数声明:类是函数实现接口可以有属性,不能有字段一个子类只能继承一个父类 ...

  4. java.lang.OutOfMemoryError处理错误

    内存详解 原因: 常见的有以下几种: 1.内存中加载的数据量过于庞大,如一次从数据库取出过多数据: 2.集合类中有对对象的引用,使用完后未清空,使得JVM不能回收: 3.代码中存在死循环或循环产生过多 ...

  5. mybatis 中#{}与${}的区别

    1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111&qu ...

  6. Oracle索引梳理系列(三)- Oracle索引种类之反向索引

    版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...

  7. 问题解决——开启Guest后仍无法共享打印机

    ==================================声明================================== 本文版权归作者所有 未经作者授权 请勿转载 保留法律追究的 ...

  8. 【mysql】关于硬件方面的一些优化

    一.CPU最大性能模式 cpu利用特点 5.1 最高可用4个核 5.5 最高可用24核 5.6 最高可用64核心 一次query对应一个逻辑CPU 你仔细检查的话,有些服务器上会有的一个有趣的现象:你 ...

  9. 【学习笔记】Wireshark的用法

    计算机网络课上,需要我们灵活运用网络协议分析仪wireshark,最近一直在看,感觉有点难,并不是软件本身操作难,而是看懂一大群包的含义难,这个难主要也因为它是全英文的~~.. 好了,大致总结一下,基 ...

  10. C语言中链表任意位置怎么插入数据?然后写入文件中?

    链表插入示意图:(图是个人所画)因为链表指针指来指去,难以理解,所以辅助画图更加方便. 插入某个学号后面图: 定义的结构体: struct student { ]; //学生学号 ]; //学生姓名 ...