码迷,mamicode.com
首页 > 其他好文 > 详细

Alamofire请求网络

时间:2016-07-09 13:25:19      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:

HTTP - GET和POST请求
- 如果要传递大量数据,比如文件上传,只能用POST请求
- GET的安全性比POST要差些,如果包含机密/敏感信息,建议用POST
- 如果仅仅是索取数据(数据查询),建议用GET
- 如果是增加、修改、删除数据,建议使用POST

iOS中的HTTP
- NSURLConnection:用法简单,最古老最经典最直接的一种方案
- NSURLSession:iOS7新出的技术,功能比NSURLConnection更加强大
- AFNetworking:简单易用,提供了基本够用的常用功能
- Alamofire:纯Swift网络请求库

Alamofire特点:
1.纯Swift编写的HTTP网络库
2.链式请求、响应
3.URL/JSON/plist格式参数
4.上传文件/数据/流/多格式数据
5.断点续传
6.NSURLCredential授权
7.HTTP响应验证
8.NSProgress&进度闭包

 

使用CocoaPods安装:

source https://github.com/CocoaPods/Specs.git
platform :ios, 9.0
use_frameworks!
target AlamofireDemo do
pod Alamofire
pod SwiftyJSON
end
  • 请求:NSURLRequest
  • 回复:NSHTTPURLResponse
  • 数据:NSData
  • 错误:NSError

Alamofire基本用法:

import Alamofire
Alamofire.request(.GET,"https://httpbin.org/get")

响应处理:

技术分享

响应序列化:

response()
responseData()
responseString(encoding:NSStringEncoding)
responseJSON(options:NSJSONReadingOptions)
responsePropertyList(options:NSPropertyListReadOptions)

HTTP方法:

public enum Method:String{
case OPTIONS,GET,HEAD,POST,PUT,PATCH,DELETE,TRACE,CONNECT
}

参数:

let parameters=[
    "foo":"bar",
    "baz":["a",1],
    "qux":[
        "x":1,
        "y":2,
        "z":3
    ]
]

参数Encoding和Content-Type

enum ParameterEncoding{
case URL    //application/x-www-form-urlencoded
case JSON //application/json
case PropertyList //application/x-plist
}

HHTP Headers:

技术分享

 

Alamofire请求网络

标签:

原文地址:http://www.cnblogs.com/abelsu/p/5655640.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!