swift 3 alamofire - 获取请求给出响应序列化失败
Posted
技术标签:
【中文标题】swift 3 alamofire - 获取请求给出响应序列化失败【英文标题】:swift 3 alamofire - get request gives response serialization failed 【发布时间】:2016-11-19 22:09:48 【问题描述】:我正在使用 ruby on rails 上的设计进行身份验证。一步一步来,我已禁用 cookie 身份验证,以便在身份验证之前测试检索结果。
如果我打开浏览器并导航到 Alamofire 正在访问的 url,我会得到如下 JSON 格式的结果:
"id":250,"name":null,"username":"walker","bio":null,"gender":null,"birth_date":null,"profile_image_url":null
我正在请求这样的 alamofire 请求:
Alamofire.request(requestPath, method: .get, parameters: [:], encoding: JSONEncoding.default, headers: [:]).responseJSON (response) in
if (response.result.isFailure)
completion(false, "")
else
if let result = response.result.value
completion(true, result)
这都在另一个方法的内部,它只是提供了一个完成处理程序,正如您在 Alamofire 请求的完成处理程序内部看到的那样。
我每次都会出错。
错误提示:
responseSerializationFailed : ResponseSerializationFailureReason
我做错了什么?
【问题讨论】:
您找到问题了吗? 我不得不发送一个获取请求而不是一个帖子 这是你在你的例子中所做的,不是吗? 【参考方案1】:此错误表明您的响应不是 JSON 格式的数据(或您的 API 响应有问题),请尝试使用 post man 之类的东西来检查您的 API 响应并确保一切正常,然后再向 swift 请求
【讨论】:
以上是关于swift 3 alamofire - 获取请求给出响应序列化失败的主要内容,如果未能解决你的问题,请参考以下文章
带参数的 Alamofire 4 Swift 3 GET 请求
Swift 3 / Alamofire 4:在 TableView 上使用 ID 获取数据