NetWorkUtils.swift
2.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import GeneralUtils
import Foundation
import Alamofire
extension NetWorkUtils {
/**
The JSONEncoding type creates a JSON representation of the parameters object, which is set as the HTTP body of the request. The Content-Type HTTP header field of an encoded request is set to application/json.
import Alamofire
let parameters: Parameters = [
"idWorker": getIDWork(),
"signboard": signboard == 1,
]
*/
public static func excutePostTypeRawJSONEncoding(parameters: Parameters, url: String, isShowProgress: Bool? = nil, vc: UIViewController? = nil,
responseStringParam: (@escaping (DataResponse<String>) -> Void)) {
NetWorkUtils.excutePost(parameters: parameters, url: url, isShowProgress: isShowProgress, vc: vc, encoding: JSONEncoding.default, responseStringParam: responseStringParam)
}
public static func excutePostTypeFormURLEncoded(parameters: Parameters, url: String, isShowProgress: Bool? = nil, vc: UIViewController? = nil,
responseStringParam: @escaping (DataResponse<String>) -> Void) {
NetWorkUtils.excutePost(parameters: parameters, url: url, isShowProgress: isShowProgress, vc: vc, encoding: URLEncoding.default, responseStringParam: responseStringParam)
}
public static func excutePostTypePropertyListEncoding(parameters: Parameters, url: String, isShowProgress: Bool? = nil, vc: UIViewController? = nil,
responseStringParam: @escaping (DataResponse<String>) -> Void) {
NetWorkUtils.excutePost(parameters: parameters, url: url, isShowProgress: isShowProgress, vc: vc, encoding: PropertyListEncoding.default, responseStringParam: responseStringParam)
}
public static func excutePost(parameters: Parameters, url: String, isShowProgress: Bool? = nil, vc: UIViewController? = nil, encoding: ParameterEncoding,
responseStringParam: @escaping (DataResponse<String>) -> Void) {
if isShowProgress == true {
vc?.showWaitOverlay(isBlockTouch: true)
}
println("excutePost: " + url)
println(parameters)
Alamofire.request(url, method: .post, parameters: parameters, encoding: encoding)
.responseString { response in
println(response.value)
if isShowProgress == true {
vc?.removeAllOverlays()
}
responseStringParam(response)
}
}
}