【发布时间】:2018-04-11 20:15:31
【问题描述】:
我正在使用 Alamofire,与 HTTP 一起使用没有问题,但是当我将协议 HTTP 更改为 HTTPS 时出现以下问题
错误域=NSPOSIXErrorDomain 代码=100 "协议错误" UserInfo={NSErrorPeerAddressKey={长度=16,容量=16,字节= 0x100201bb5d5efc420000000000000000},_kCFStreamErrorCodeKey=100, _kCFStreamErrorDomainKey=1})
我试过的鳕鱼:
public init(){}
static let shared = HTTPRequest()
func Service(method:String,path:String,
parameters:[String:String]? = nil,
requestObj:Any? = nil,
actionListener:ActionListener){
actionListener.start()
var _url = URLComponents(string: BaseURL + path)
if parameters != nil{
var queryItems = [URLQueryItem]()
for parameter in parameters!{
let queryItem = URLQueryItem(name: parameter.key, value: parameter.value)
queryItems.append(queryItem)
}
_url?.queryItems = queryItems
}
var request = URLRequest(url: (_url?.url)!)
request.httpMethod = method
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
if MobileConstants.AccessToken != nil{
request.setValue(MobileConstants.AccessToken, forHTTPHeaderField:"Authorization")
request.setValue(MobileConstants.LoginResponse.user.userName, forHTTPHeaderField: "UserName")
}
request.setValue("iOS", forHTTPHeaderField: "ClientToken")
request.setValue("en-US", forHTTPHeaderField: "Language")
if(requestObj != nil){
let json = JSONSerializer.toJson(requestObj!)
request.httpBody = json.data(using: .utf8)
}
Alamofire.request(request).responseJSON {
response in
if(response.result.isSuccess){
actionListener.success(from: path, data: response.result.value!)
}else{
actionListener.fail()
print(response.error)
print(response.result.error)
}
}
}
【问题讨论】: