如何子集化 SwiftyJSON JSON 对象

How can you subset a SwiftyJSON JSON object

我正在构建一个 iOS 应用程序,其中我的一个 API 调用 returns 我加载到 JSON 对象中的一个大 JSON blob使用 SwiftyJSON。例如,它看起来像这样

{
  "data": {
    "name":"object name",
    "id":1,
    "description":"short description of object",
    "type":"type",
    "runs":[
    ],    
}

作为应用程序的一部分,用户可以修改名称等内容,但 PATCH 调用的 API 端点需要删除 runs 键。有谁知道如何获取 SwiftyJSON JSON 对象并创建一个具有键子集的新对象。例如,我希望 JSON blob 看起来像

{
  "data": {
    "name":"object name",
    "id":1,
    "description":"short description of object",
    "type":"type"   
}

我花了很多时间尝试各种事情,但都没有成功。任何帮助将不胜感激。

您可以从 SwiftyJSON 对象中获取关联的 dictionaryValue 并使用 removeValueForKey 方法。

当然这意味着你必须将 dictionaryValue 分配给一个变量,你不能删除 SwiftyJSON 对象本身的键。

示例:

var dataDict = json["data"].dictionaryValue
dataDict.removeValueForKey("runs")

注意:removeValueForKey 方法名称有点误导;它会删除键,而不仅仅是值。