Swift使用Alamofire实现网络请求
Alamofire是一个用Swift编写的HTTP网络库,由此前热门开源项目AFNetworking的的作者mattt开发,可非常简单地用于异步网络通信。
要获取最新版本的 Alamofire,前往https://github.com/Alamofire/Alamofire然后单击网页右边的Download ZIP按钮。接着在 Finder 中打开起始项目文件夹,,然后将Alamofire-master文件夹拖入到您的主项目文件夹中。

打开Alamofire-master文件夹(现在它位于您的项目文件夹中),然后将Alamofire.xcodeprij文件(注意是蓝色图标!不是白色图标!)直接拖进 Xcode 中的 AlamofireDemo 项目下面,如下图所示:

接下来,单击AlamofireDemo项目,进入General窗口。滚动到Embedded Binaries项,然后单击其下方的 + 号。选择Alamofire.framework,最后点击Add完成添加。

生成并运行您的项目以确保没有任何错误出现,然后就可以进入到下一节内容了。
要使用 Alamofire 的话,首先需要导入它。您需要在每个使用了 Alamofire 类以及函数的文件中添加这条`import`语句。
|
1
|
import Alamofire |
Alamofire 是一个功能强大的,Swift 语言 HTTP 网络开发工具包。支持各种 HTTP Method、JSON、文件上传、文件下载和多种认证方法。
接下来我们来看具体操作
GET请求
Alamofire.request(.GET, "http://httpbin.org/get")
包含参数
Alamofire.request(.GET,
"http://httpbin.org/get",
parameters: ["foo": "bar"])
包含 Response 处理

Alamofire.request(.GET,
"http://httpbin.org/get",
parameters: ["foo": "bar"])
.response { (request, response, data, error) in
println(request)
println(response)
println(error)
}

POST请求

let parameters = [
"foo": "bar",
"baz": ["a", 1],
"qux": [
"x": 1,
"y": 2,
"z": 3
]
] Alamofire.request(.POST,
"http://httpbin.org/post",
parameters: parameters)

下载一个文件

Alamofire.download(.GET,
"http://httpbin.org/stream/100",
destination: { (temporaryURL, response) in
if let directoryURL = NSFileManager.defaultManager()
.URLsForDirectory(.DocumentDirectory,
inDomains: .UserDomainMask)[0]
as? NSURL {
let pathComponent = response.suggestedFilename return directoryURL.URLByAppendingPathComponent(pathComponent)
} return temporaryURL
})

上传文件

let fileURL = NSBundle.mainBundle()
.URLForResource("Default",
withExtension: "png")
Alamofire.upload(.POST,
"http://httpbin.org/post",
file: fileURL)

下载图片
Alamofire.request(.GET, "/article/image/20150128/54c85e49bfa8d25764000f47/small_f3338d9cdf932cc3c0464dcb523361c5.jpg").response() {(_, _, data, _) in
let image = UIImage(data: data! as NSData)
self.imageView.image = image
}
现在您已经学会了如何使用 Alamofire 操作最基本的网络请求了。
http://www.cnblogs.com/maple023/p/4256552.html
Swift使用Alamofire实现网络请求的更多相关文章
- iOS swift HandyJSON组合Alamofire发起网络请求并转换成模型
在swift开发中,发起网络请求大部分开发者应该都是使用Alamofire发起的网络请求,至于请求完成后JSON解析这一块有很多解决方案,我们今天这里使用HandyJSON来解析请求返回的数据并转化成 ...
- [Swift通天遁地]四、网络和线程-(4)使用Alamofire实现网络请求
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- iOS开发——实战篇Swift篇&UItableView结合网络请求,多线程,数据解析,MVC实战
UItableView结合网络请求,多线程,数据解析,MVC实战 学了这么久的swift都没有做过什么东西,今天就以自己的一个小小的联系,讲一下,怎么使用swift在实战中应用MVC,并且结合后面的高 ...
- Swift: 用Alamofire做http请求,用ObjectMapper解析JSON
跟不上时代的人突然间走在了时代的前列,果然有别样的风景.首先鄙视一下AFNetworking.这个东西实在太难用了.不想封装都不行,要不写一大堆代码. NSURL *URL = [NSURL URLW ...
- Swift基础之Demo包含刷新,加载,网络请求,MVC
Swift中有一个Alamofire第三方是进行网络请求的,它是AFNetworking的作者写的Swift形式,今天先介绍一下,利用pod导入AFNetworking,SVProgressHUD,M ...
- Swift3.0 Alamofire网络请求的封装(get,post,upload图片上传)转
转自: http://blog.csdn.net/C_calary/article/details/53193747 学习Swift 试着动手写个天气小app,搜集资料这个封装还蛮好用的. 我用的第三 ...
- swift中第三方网络请求库Alamofire的安装与使用
swift中第三方网络请求库Alamofire的安装与使用 Alamofire是swift中一个比较流行的网络请求库:https://github.com/Alamofire/Alamofire.下面 ...
- Swift基础之使用Alamofire库进行网络请求和断点下载
好久没有写过Swift相关的文章博客了,这里我就展示一下关于使用Alamofire库的方法 1.什么是Alamofire (1)Alamofire 的前身是 AFNetworking.AFNetwor ...
- swift 第十课 cocopod 网络请求 Alamofire
这个 cocopod 真的是不容易,差点就放弃了…… 还好,我足够的坚持…… 还是首先说下具体的步骤,希望能记得足够的详细…… 1.打开终端,cd 到自己项目的文件夹 cd 文件路径 2.执行 vim ...
随机推荐
- JSOI球形空间产生器 (高斯消元)
按照朴素的列方程,可以列出n+1个n元2次方程. 将相邻的两个方程相减就可以得到n个n元1次方程,进行高斯消元就可以了. ..,..] of extended; temp,ans:..] of ext ...
- JNI c++ 调用 java
----------------------------------------------c++--------------------------------------- #include &q ...
- PAT (Basic Level) Practise:1039. 到底买不买
[题目链接] 小红想买些珠子做一串自己喜欢的珠串.卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖.于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要的珠子?如果是,那么告诉她有 ...
- 跟开涛老师学shiro -- shiro简介
1.1 简介 Apache Shiro是Java的一个安全框架.目前,使用Apache Shiro的人越来越多,因为它相当简单,对比Spring Security,可能没有Spring Securi ...
- sticky bit
• Sticky Bit这个Sticky Bit当前只针对目录有效,对文件没有效果.SBit对目录的作用是:“在具有SBit的目录下,用户若在该目录下具有w及x权限,则当用户在该目录下建立文件或目录时 ...
- 利用.htaccess绑定子域名到子目录(亲测万网可用)
http://www.xmgho.com/archives/783.html 利用.htaccess绑定域名到子目录,前提你的空间服务器必须支持apache的rewrite功能,只有这样才能使用.h ...
- haar-like特征(转载)
浅析人脸检测之Haar分类器方法 [补充] 这是我时隔差不多两年后, 回来编辑这篇文章加的这段补充, 说实话看到这么多评论很是惊讶, 有很多评论不是我不想回复, 真的是时间久了, 很多细节我都忘记了 ...
- 144. Binary Tree Preorder Traversal
Given a binary tree, return the preorder traversal of its nodes' values. For example:Given binary tr ...
- Codeforces Round #366 (Div. 2) A
A. Hulk time limit per test 1 second memory limit per test 256 megabytes input standard input output ...
- Gulp 总结
Gulp介绍 Gulp是一个前端开发的自动化构建工具.前端开发往往需要把LESS/SCSS文件进行编译成CSS文件,javascript多文件合并成一个文件并压缩以及一些其他需要重复性操作的工作.而G ...