https://github.com/coderzhuxh/xhnetworkswift
swift,基于Alamofire数据请求工具 - 支持POST/GET数据请求,文件上传,文件下载.
https://github.com/coderzhuxh/xhnetworkswift
Last synced: 8 months ago
JSON representation
swift,基于Alamofire数据请求工具 - 支持POST/GET数据请求,文件上传,文件下载.
- Host: GitHub
- URL: https://github.com/coderzhuxh/xhnetworkswift
- Owner: CoderZhuXH
- License: mit
- Created: 2016-08-21T09:20:09.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2016-08-23T12:12:57.000Z (almost 10 years ago)
- Last Synced: 2025-04-13T19:04:57.552Z (about 1 year ago)
- Language: Swift
- Homepage:
- Size: 135 KB
- Stars: 22
- Watchers: 1
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# XHNetworkSwift
### swift,基于Alamofire数据请求封装
###技术交流群(群号:537476189)
##API
```swift
/**
GET 请求
- parameter urlString: 请求URL
- parameter parameters: 请求参数
- parameter success: 成功回调
- parameter failure: 失败回调
*/
func GET(urlString: String ,parameters: [String : AnyObject]? ,success: NetworkSuccess, failure: NetworkFailure)
/**
POST请求
- parameter urlString: 请求URL
- parameter parameters: 请求参数
- parameter success: 成功回调
- parameter failure: 失败回调
*/
func POST(urlString: String ,parameters: [String : AnyObject]? ,success: NetworkSuccess, failure: NetworkFailure)
/**
文件上传
- parameter urlString: URL
- parameter fileURL: 要上传文件路径URL(包含文件名)
- parameter uploadProgress: 上传进度回调(子线程)
- parameter success: 成功回调
- parameter failure: 失败回调
*/
func upload(urlString: String ,fileURL:NSURL ,uploadProgress:UploadProgress, success: XHNetworkSuccess, failure: XHNetworkFailure)
/**
文件下载
- parameter urlString: 下载URL
- parameter downloadProgress: 下载进度回调(子线程)
- parameter fileSavePathURL: 文件存储路径URL(不含文件名)
- parameter success: 成功回调
- parameter failure: 失败回调
*/
func download(urlString: String ,savePathURL:NSURL ,downloadProgress: DownloadProgress, success: XHNetworkSuccess, failure: XHNetworkFailure)
```
## 使用方法:
### 1.GET请求
```swift
//MARK: - GET请求
XHNetwork.shareNetwork.GET(URL_TEST, parameters: nil, success: { (response) in
debugPrint(response)
}) { (error) in
debugPrint(error)
}
```
### 2.POST请求
```swift
//MARK: - POST请求
let dic = ["name":"zhang","phone":"10010"]
XHNetwork.shareNetwork.POST(URL_TEST, parameters: dic, success: { (response) in
debugPrint(response)
}) { (error) in
debugPrint(error)
}
```
### 3.文件下载
```swift
//MARK: - 文件下载
//文件保存路径
let savePathURL = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)[0]
XHNetwork.shareNetwork.download(URL_DOWN, savePathURL: savePathURL
, downloadProgress: { (bytesRead, totalBytesRead, totalBytesExpectedToRead) in
/**
* 子线程回调下载进度
*/
debugPrint("单次下载大小:\(bytesRead)___一共下载大小:\(totalBytesRead)___总大小:\(totalBytesExpectedToRead)")
/**
* 如需进行UI处理,请到主线程操作
*/
dispatch_async(dispatch_get_main_queue()) {
//处理UI
}
}, success: { (response) in
/*
成功(回调文件存储路劲)
*/
debugPrint(response)
}) { (error) in
/*
失败
*/
debugPrint(error)
}
```
### 4.文件上传
```swift
//MARK : - 文件上传
XHNetwork.shareNetwork.upload(上传URLString , fileURL: 文件完整路径URL, uploadProgress: { (bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) in
/**
* 子线程回调上传进度
*/
debugPrint("单次上传大小:\(bytesWritten)___一共上传大小:\(totalBytesWritten)___总大小:\(totalBytesExpectedToWrite)")
/**
* 如需进行UI处理,请到主线程操作
*/
dispatch_async(dispatch_get_main_queue()) {
//处理UI
}
}, success: { (response) in
/*
成功
*/
debugPrint(response)
}) { (error) in
/*
失败
*/
debugPrint(error)
}
```
## 安装
### 手动添加:
* 1.将 XHNetworkSwift 文件夹添加到工程目录中即可
## 系统要求
* 该项目最低支持 iOS 8.0 和 Xcode 7.3
## 许可证
XHNetworkSwift 使用 MIT 许可证,详情见 LICENSE 文件
## 传送门:
[Swift网络编程(一)数据请求](http://www.jianshu.com/p/f8643477e690)
[Swift网络编程(二)文件上传/下载](http://www.jianshu.com/p/13e2dbc07481)