我正在连接到localhost上的服务器来获取一些数据。返回到此请求的数据是JSON,在Postman上正确显示JSON,但是当我在玩iOS时,Alamofire返回错误:
responseSerializationFailed(Alamofire.AFError.ResponseSerializationFailureReason.jsonSerializationFailed(Error Domain = NSCocoaErrorDomain Code = 3840“Garbage at end。”UserInfo = {NSDebugDescription = Garbage at end。}))
有问题的JSON是:
{
"name": "TestName",
"surname": "TestSurname"
}
我不明白的是,如果我强制我的服务器以字符串的形式返回json,就像这样
"{"name": "TestName after update","surname": "TestSurname"}"
Alamofire不会抱怨并正确解析它。那个怎么样?我认为指定参数responseJSON
它会相反的方式。
Alamofire.request("http://192.168.1.4:8080/user/abcdf").validate().responseJSON { response in
switch response.result {
case .success:
// DO stuff
case .failure(let error):
print(error)
}
}
我认为你需要获取数据,所以你应该像这样编写我不确定
Alamofire.request("http://192.168.1.4:8080/user/abcdf",method:.get).responseJSON {
response in
if response.result.isSuccess {
//do stuff
}
else {
// do other stuff
}
}