我嘗試使用下面的一個NSDictionary對象轉換爲JSON字符串的重新排序:轉換的NSDictionary以JSON字符串引起元素
let data = try JSONSerialization.data(withJSONObject: data, options :[])
var string = String(data: data, encoding: String.Encoding(rawValue: String.Encoding.utf8.rawValue))
然而,它重新排序各個元素字母,這是什麼斯威夫特的回報:
{"client-nonce":"4q7581q6CbkAlJAAajHuWFiLJTPKJLpk","timestamp":"1480560235","token":"5aeba5cb66644e8e739765632a23f2f98a4035f99306f46777c67cea652dad79","url":"http://api.uselinkthrow.local/api/me/stream/friend/links"}
我想保持在字典中作出的命令,從而返回此:
{"token":"5aeba5cb66644e8e739765632a23f2f98a4035f99306f46777c67cea652dad79","timestamp":"1480560235","client-nonce":"4q7581q6CbkAlJAAajHuWFiLJTPKJLpk","url":"http://api.uselinkthrow.local/api/me/stream/friend/links"}
有誰知道我該怎麼做?
那怎麼世界的作品。此外,如果字典鍵不正確,會有什麼影響? –
HMAC哈希值會有所不同 –
「有誰知道我能做到這一點?」爲什麼你想這樣做?如果你能解釋爲什麼,那麼人們可能會提供明智的解決方案。如果你真的想這樣做,那麼字典(單獨)就是錯誤的數據結構。你需要一個數組,或者一個數組和一個字典的組合。字典本質上是無序的。陣列是有序的。這適用於JSON以及Swift。然而,取決於你對「爲什麼?」的回答的問題,你可能會更好繼續使用字典,然後在需要時操縱鍵進入一些秩序。 –