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数据缓存及YYCache的实现分析

    1. 什么是cache cache就是缓存的意思. 计算机上的cache就是高速缓存,计算机组成课程里的定义是,存在于主存和CPU之间,主要用于解决CPU处理数据的速度远远大于读取主存数据的速度. 手 ...

  2. 代码创建storyboard

    代码创建storyboard方式如下 // 加载storyboard UIStoryboard *storyboard = [UIStoryboard StoryboardWithName:@&quo ...

  3. Android 在C代码中调用logcat

    本文给<Android java传递int类型数组给C>中添加C代码中调用logcat的功能 Android.mk文件增加以下内容 LOCAL_LDLIBS += -llog C代码中增加 ...

  4. 3D Touch介绍:电子秤App与快捷操作

    随着iPhone6s与6s plus的到来,苹果给我们展现了一种全新的交互方式:重按手势.你可能知道,这个特性已经在Apple Watch和MacBook上推出了,不过那时叫Force Touch,就 ...

  5. GCD中的dispatch_group函数的详解

    <一>引入dispatch_group函数的目的 在追加到dispatch_Queue中的多个处理全部结束后想要执行结束的处理,这种需求经常会在我们的程序中出现 (第一种情况)只使用一个S ...

  6. 利用grep命令查找文件内容

    例如查找PHP源码某个函数的具体实现 grep -rn "PHP_FUNCTION(socket_accept)" ./ext

  7. 0005 《SQL必知必会》笔记01-SELECT语句

    1.SELECT基本语句: SELECT 字段名1,···,字段名n FROM 表名 2.检索所有字段,用"*"替换字段名,这会导致效率低下 SELECT * FROM 表名; 3 ...

  8. c# 注册全局热键

    //引入系统API [DllImport("user32.dll")] static extern bool RegisterHotKey(IntPtr hWnd, int id, ...

  9. Spark大数据的学习历程

    Spark主要的编程语言是Scala,选择Scala是因为它的简洁性(Scala可以很方便在交互式下使用)和性能(JVM上的静态强类型语言).Spark支持Java编程,但对于使用Java就没有了Sp ...

  10. .net 操作sftp服务器

    因为项目的需要,整理了一段C#操作sftp的方法. 依赖的第三方类库名称为:SharpSSH 1.1.1.13. 代码如下: 1: using System; 2: using System.Coll ...