swift代码之路(三)AF网络请求
来源:互联网 发布:中国近10年gdp数据 编辑:程序博客网 时间:2024/05/21 06:42
创建数据请求类
import UIKitimport AFNetworking//请求方法/// - GET: get/// - POST: postenum RequsetMethod:String { case GET = "GET" case POST = "POST"}class SPFNetWorkManager: AFHTTPSessionManager { //单例 static let sharedTools:SPFNetWorkManager = { let instance = SPFNetWorkManager() instance.responseSerializer.acceptableContentTypes?.insert("text/html") instance.responseSerializer.acceptableContentTypes?.insert("text/plain") return instance }() // 定义请求完成的回调的别名 typealias httptoolBack = (response:AnyObject?,error:NSError?)->() /// 请求数据 /// /// - parameter urlString: 请求地址 /// - parameter parameters: 请求参数 /// - parameter finished: 请求成功或者失败的回调 func request(method: RequsetMethod = .GET, urlString: String, parameters: AnyObject?, finished:httptoolBack){ // 定义请求成功的闭包 let success = { (dataTask: NSURLSessionDataTask, responseObject: AnyObject?) -> Void in finished(response: responseObject, error: nil) } // 定义请求失败的闭包 let failure = { (dataTask: NSURLSessionDataTask?, error: NSError) -> Void in finished(response: nil, error: error) } if method == .GET { GET(urlString, parameters: parameters, progress: nil, success: success, failure: failure) }else{ POST(urlString, parameters: parameters, progress: nil, success: success, failure: failure) } } /// 发送请求(上传文件) func requestWithData(data: NSData, name: String, urlString: String, parameters: AnyObject?, finished:httptoolBack) { // 定义请求成功的闭包 let success = { (dataTask: NSURLSessionDataTask, responseObject: AnyObject?) -> Void in finished(response: responseObject, error: nil) } // 定义请求失败的闭包 let failure = { (dataTask: NSURLSessionDataTask?, error: NSError) -> Void in finished(response: nil, error: error) } POST(urlString, parameters: parameters, constructingBodyWithBlock: { (formData) -> Void in formData.appendPartWithFileData(data, name: name, fileName: "aa", mimeType: "application/octet-stream") }, progress: nil, success: success, failure: failure) }}
调用方法
let urlString = "http://192.168.3.7:8080/FreshFun/homepage.do" //创建httpTool 实例 let HttpRequest = SPFNetWorkManager.sharedTools //发送GET请求 HttpRequest.request(RequsetMethod.GET, urlString: urlString, parameters:nil ) { (response, error) in print(response) }
数据
Optional({ goodsMoney = "22.00"; "goods_des" = "\U9999\U8549\U8089333"; "goods_img" = "/image/2016/9/8/1473340021432.png"; "goods_name" = BananaMeat; id = 4; marketMoney = "31.43"; })
0 0
- swift代码之路(三)AF网络请求
- swift代码之路(三)AF网络请求
- Swift之网络请求
- Swift 之 Alamofire 网络请求、取消请求
- swift3 AF网络post和get请求
- Swift之网络编程-请求缓存
- Swift之网络请求框架封装
- Swift-网络上传请求之Multipart
- Swift之网络编程-请求缓存
- 使用AF的一个简单网络请求封装+ (instancetype)sharedInstance;
- af网络请求里,刷新tableview,reloaddate方法执行两次
- iOS 基于AF网络请求封装的简易思路
- Swift网络请求(Moya篇)
- swift 网络请求 2
- Swift网络请求
- swift 网络请求
- Swift - 网络请求
- swift 网络请求
- [leetcode]397. Integer Replacement
- Android文件三种上传方式总结
- 【BLE-CC2640】CC2640之广播MAC
- Quartz 2D 涂鸦
- 猫猫学IOS(三十四)UI之Quartz2D画画板的实现
- swift代码之路(三)AF网络请求
- iOS Quartz2D简介
- ubuntu 开发工具的安装 Ubuntu Make
- 【Leetcode】Integer Break
- 杂谈
- DOS常用命令篇
- Unity保存数据方式——PlayerPrefs
- iOS学习 - Quartz2D绘图学习
- visual studio 2012 安装闪退