2017-03-13 41 views
1

我有一個方法,該方法將返回如下一個[String: Any]字典,反正JSON(節點:)可以與稱爲[字符串:任何]類型在蒸氣

func getDetailDictionary() -> [String: Any] { 
    // demo code 
    let followers = [1, 2, 3, 4, 5] 
    return [ 
     "name": "sample name", 
     "followers": followers 
    ] 
    } 

我需要此對象轉換到JSON,以便我可以將它作爲ResponseRepresentable對象發送回客戶端。

我用下面的準備JSON對象:

let jsonData = try JSON(node: getDetailDictionary()) 

但這給錯誤,告訴這不符合任何可用過載。我不認爲[String:Any]類型在JSON(node:)方法實現中沒有處理。我們可以通過Vapor解決這個問題嗎?

+0

@OlegGordiichuk這個問題純粹涉及到服務器端的Swift框架 - 蒸氣。請再次看看描述,我做了一些小的更新。 – Alexi

回答

2

我能夠通過將所有值的類型分配給Node來獲得此代碼的工作方式。如果你想在返回字典之前與字典中的數據交互,這可能不是你想要的,但我認爲它會起作用。

func getDetailDictionary() -> Node { 
    // demo code 
    let followers: Node = [1, 2, 3, 4, 5] 
    let dict: Node = [ 
     "name": "sample name", 
     "followers": followers 
    ] 
    return dict 
} 

drop.get("test") { req in 
    return JSON(getDetailDictionary()) 
} 
相關問題