使用swift从JSON删除不需要的数据

时间:2019-11-12 11:03:20

标签: json swift xcode

我得到回应

{"msg":"Success: Mobile Number is Valid","status":0}396b6c706a54383638343131  

如何使用Swift迅速从API响应中获取有效的JSON。

代码:

NSLog("Login response: " + response, "response")
    let jsonTag = JSON(response.dropLast(24).data(using: .utf8)!)
    let loginModelRootClass = LoginModelRootClass(fromJson: jsonTag )

    if  (loginModelRootClass.status == 0)
    {
        /* successfully login */
        NSLog("Login response: " + loginModelRootClass.msg, "response")
    }
    else
    {
        /* failure login */
        NSLog("Login response: " + loginModelRootClass.msg, "response")

新手请迅速提供帮助。

1 个答案:

答案 0 :(得分:-1)

我同意这样的评论:最好的选择是让后端发送有效的json。但是,如果不能这样做,则可以使用下面的函数删除无效的尾随数据,然后使用Codable

进行解码
func clean(json: String) -> String? {
   guard let closing = json.lastIndex(of: "}") else {return nil}
   var string = json
   let range = string.index(after: closing)..<string.endIndex
   string.removeSubrange(range)
   return string
}