要求在迅速3.2

要求在迅速3.2

问题描述:

let header = [ 
      "Content-Type":"application/json", 
      "X-Source":"iOS", 
      "Authorization":token] 
let strURL = "ValidURL" 


let manager = AFHTTPSessionManager() 
let serializer = AFHTTPRequestSerializer() 
    for (_,dict) in header.enumerated() { 
     serializer.setValue("\(dict.value)", forHTTPHeaderField: "\(dict.key)") 
    } 
    manager.requestSerializer = serializer 

    let req = serializer.request(withMethod: "POST", urlString: strURL, parameters: params, error: nil) 
    manager.dataTask(with: req as URLRequest) { (response, data, error) in 
     print(error) 
     print(response) 
     print(data) 
    } 
//No response from this method 

使用JSON和头AFNetworking另外,我想:要求在迅速3.2

var request = URLRequest(url: URL(string: strURL)!) 
request.httpMethod = "POST" 
for (_,dict) in header.enumerated() { 
     request.setValue("\(dict.value)", forHTTPHeaderField: "\(dict.key)") 
    } 
request.httpBody = try! JSONSerialization.data(withJSONObject: params, options: .prettyPrinted) 
manager.dataTask(with: request) { (response, data, error) in 
    print(error) 
    print(response) 
    print(data) 
} 

连我都试过:

manager.post(strURL, parameters: params, progress: nil, success: { (sessionTask, respose) in 
      if let dict = respose as? Dictionary<String,Any> { 
       print(dict) 
      } else { 
      } 
     }) { (task, error) in 
      print(error) 
     } 

//It Give me: failed: bad request (400) 
+1

在第一个两个版本,dataTask的结果是,应该有'简历()'任务调用它 –

+0

@LouFranco感谢,但恢复后没有运气'“无法处理JSON” –

+0

参考'来'https:// github.com/AFNetworking/AFNetworking',在请求序列化部分,你想要什么。 –

有两个问题在这里

  1. 当您使用dataTask方法时,您将返回一个任务对象。当您想要发送请求时,您需要拨打resume()

  2. 您的错误表明您的JSON正文不正确。那是在您的params对象中,可能与服务所期望的不匹配。