无法从 Alamofire 的 Swift 3 中的 Web 服务的 PATCH API 调用中获得响应
Posted
技术标签:
【中文标题】无法从 Alamofire 的 Swift 3 中的 Web 服务的 PATCH API 调用中获得响应【英文标题】:Not able to get response from PATCH API call for webservice in Swift 3 by Alamofire 【发布时间】:2017-11-16 08:06:55 【问题描述】:我正在尝试通过 PATCH 方法进行调用。我正在使用 Alamofire 库进行网络调用。对于 GET/POST,它工作正常,但在尝试调用 PATCH 时出现以下错误。
ResponseSerializationFailed
Code 3840 from network
我通过以下方式调用请求
Alamofire.request(urlString, method: .patch, parameters: params as? [String:Any], encoding: JSONEncoding.default, headers: nil).responseJSON response in
requestVC.removeLoader()
switch (response.result)
case .success:
if response.result.value != nil
completionHandler (response.result.value)
break
case .failure(let error):
failureHandler (error as NSError?)
break
【问题讨论】:
调用了,但是你得到的响应不是json。 如何解决这个问题? 检查(例如使用 curl)来自服务器的响应。如果在失败情况下设置断点,则可以使用调试器检查响应。po String(data: response.data, encoding: .utf8)
【参考方案1】:
它的发生是由于调用 api 请求的一些内部问题。固定。
【讨论】:
以上是关于无法从 Alamofire 的 Swift 3 中的 Web 服务的 PATCH API 调用中获得响应的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift 中使用 Alamofire 5.0 获取 3 级深度 JSON 值
Alamofire 4 请求返回 NSArray,无法弄清楚如何在 Swift 3 中使用 SwiftyJSON 进行解析
Swift 3 / Alamofire:我无法获取 UITableView 上的数据