Рассмотрим следующий пример:
import Foundation
class UDFrame: Codable {
var data:Data
init(data:Data) {
self.data = data
}
}
class Event: Codable {
var name:String
init(name:String) {
self.name = name
}
}
let encoder = JSONEncoder()
let event = Event(name: "eventName")
let serializedEvent = try encoder.encode(event)
let frame = UDFrame(data: serializedEvent)
let serializedFrame = try encoder.encode(frame)
print(String(data: serializedFrame, encoding: String.Encoding.utf8)!)
Результат оператора print
следующий: {"data":"eyJuYW1lIjoiZXZlbnROYW1lIn0="}
.
У меня вопрос, как вывести "eventName"
из этого бреда?
И, если возможно, не могли бы вы объяснить, почему Data
сериализуется таким образом с помощью JSONEncoder
, иКак получить исходные данные на другой платформе, если указан такой JSON?