JSONSerialization.jsonObject不接受我的参数

时间:2018-11-03 01:17:35

标签: swift swift4 nsjsonserialization promisekit

我正在尝试承诺一个Json对象。

但是,JSONSerialization.jsonObject不接受我的任何参数。.

class func deserialize<T>(data: Data) -> Promise<T> {
    let deserialized = try! JSONSerialization.jsonObject(with: data, options: JSONSerialization.ReadingOptions.allowFragments)
        String(data: data, encoding: String.Encoding.utf8)

    // Deserialize or try as String
    guard let object = deserialized else {
        return Promise<T>(error: APIError.InvalidJSON(data) as Error)
    }

    // Cast as T
    guard let objectT = object as? T else {
        return Promise<T>(error: APIError.JSONTypeMismatch(object, T.self))
    }

    return Promise(objectT)
}

我收到两个错误:

let desserialized = try! JSONSerialization.jsonObject(with: data, options: JSONSerialization.ReadingOptions.allowFragments)

“无法使用类型为'(with:Data,options:JSONSerialization.ReadingOptions)'的参数列表调用'jsonObject''

String(data: data, encoding: String.Encoding.utf8)

“无法将类型为“数据”的值转换为预期的参数类型为“数据””

1 个答案:

答案 0 :(得分:0)

信贷转到“ RMaddy”

似乎您有另一个与标准Swift Data结构冲突的Data类/结构。

有一个我已经命名为Data的预先存在的类。