Alamofire POST请求给出200个响应代码,但响应为空。我完全模仿浏览器网络,除此请求(返回空响应)外,每个请求均有效。我知道这个问题是模棱两可的,但我很绝望。您能想到可能导致这种情况的任何原因吗?
注意:尽管我知道Alamofire处理cookie,但是在尝试查找工作请求与该请求之间的区别时,我注意到不工作的请求标头(响应cookie)中的区别。只是说这可能会导致差异。
Set-Cookie: XXX_id=2147780106.20480.0000;secure; expires=Fri, 10-Aug-2018 00:55:15 GMT; path=/
注意:当我收到前一个请求的响应以克服异步请求问题时,我正在发送新请求。
注意:responseString是responseJSON,只是尝试了responseString以查看它是否有所不同。
以下是响应:
SUCCESS: {"Response":[]}
这是相关代码:
func whospecial()
{
let url = somenewurl
Alamofire.request(url, method: .post, parameters: nil, encoding: JSONEncoding.default)
.validate { request, response, data in
return .success
}
.responseJSON {
response in
sleep(1)
Alamofire.request("someurl", method: .get, parameters: nil, encoding: JSONEncoding.default)
.validate { request, response, data in
return .success
}
.responseJSON {
response in
sleep(1)
self.getImageExists()
}
}
}
func getImageExists(){
let url = anotherurl
Alamofire.request(url, method: .get, parameters: nil, encoding: JSONEncoding.default)
.validate { request, response, data in
return .success
}
.responseJSON {
response in
sleep(1)
self.getProductVariantsFixture(url: thisIsAurl)
}
func getProductVariantsFixture(url: String){
let parameters: [String: Any] = [
"p1": aParameter,
"p2": anotherParameter
]
Alamofire.request(url, method: .post, parameters: parameters, encoding: JSONEncoding.default)
.validate { request, response, data in
return .success
}
.responseString {
response in
let json=response.data
do{
//nothing
}catch let jsonErr {
print(jsonErr)
}
}
}
启动这个应用程序只是为了获得一些乐趣,现在我疯了...任何帮助表示赞赏。