gpt4 book ai didi

swift - 在 swift 中使用 SwiftyJson True 变为 false

转载 作者:行者123 更新时间:2023-11-28 15:25:18 25 4
gpt4 key购买 nike

我在使用 .boolValue 时得到了相反的 bool 值我有这个代码。

let _ = channel.bind(eventName: "like-unlike-cake", callback:  
{(data:Any?)->Void in
let likedCake = JSON(data!)["like"]
print("liked cake: \(likedCake)")
print("Boolean: \(likedCake["liked_by_current_user"].boolValue)")

liked cake: {
"liked_by_current_user" : true
}
}
Boolean: false

但是当我使用 .bool 时,它给了我 nil。有人帮我解决这个问题吗。

更新这将是我想要获取的 json

{
"like": {
"id": "66642122-7737-4eac-94d2-09c9a35cbef8",
"liked_by_current_user": true
}
}

最佳答案

尝试以下操作:

let _ = channel.bind(eventName: "like-unlike-cake", callback {
(data:Any?)->Void in

if let jsonData = data {
let json = JSON(jsonData)
let isLikedByCurrentUser = json["like"]["liked_by_current_user"].boolValue
print(isLikedByCurrentUser)
} else {
// your data is nil
debugPrint("data error")
}
}

您也可以尝试将 data: Any 转换为 Data,方法是替换以下行:

if let jsonData = data as? Data {
let json = JSON(data: jsonData)...

因为有时 SwiftyJSON 在从 Any 创建 JSON 对象时会遇到问题。

关于swift - 在 swift 中使用 SwiftyJson True 变为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45346375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com