我在使用Siesta for iOS解析来自API调用的响应时遇到问题。发布JSON后,它无法解析响应。
resource("/SaveEmailAddress").request(.post, json: SaveEmailAddress.toDictionary()).onSuccess { (entity) in
completion(entity, nil)
}.onFailure{ (error) in
completion(nil, error)
}
API仅在正文中返回“成功”。
:status: 200
cache-control: private
content-type: application/json; charset=utf-8
server: Microsoft-IIS/10.0
x-aspnet-version: 4.0.30319
x-powered-by: ASP.NET
date: Tue, 23 Oct 2018 03:35:42 GMT
content-length: 9
"Success"
据我了解,“成功”是有效的JSON,但是,由于它不是数组或字典,因此Siesta抛出“无法解析服务器响应”错误。
error (Siesta.RequestError)
userMessage = (String) "Cannot parse server response"
httpStatusCode = (int?)nil
entity = (Siesta.Entity<Any>?)nil
当我为Siesta启用详细日志时,会出现以下错误:
错误:RequestError(userMessage:“无法解析服务器响应”, httpStatusCode:无,实体:无,原因: 可选(Siesta.RequestError.Cause.JSONResponseIsNotDictionaryOrArray(actualType: NSTaggedPointerString)),时间戳:562010225.337566)
是否有一种方法可以强制Siesta将其接受为有效的JSON响应?如果是这样,我需要具体采取哪些步骤来实现这一目标?我看到其他线程建议添加一个已经完成但对我不起作用的扩展。
extension String: Siesta.JSONConvertible { }