Вопросы с тегом «codable»

117
Массивы декодирования Swift JSONDecode не работают, если декодирование одного элемента не удается

При использовании протоколов Swift4 и Codable у меня возникла следующая проблема - похоже, что нет возможности JSONDecoderпропустить элементы в массиве. Например, у меня есть следующий JSON: [ { "name": "Banana", "points": 200, "description": "A banana grown in Ecuador." }, { "name": "Orange" } ] И...

114
С JSONDecoder в Swift 4 могут ли отсутствующие ключи использовать значение по умолчанию вместо того, чтобы быть необязательными свойствами?

Swift 4 добавил новый Codableпротокол. Когда я JSONDecoderего использую, кажется, что все необязательные свойства моего Codableкласса должны иметь ключи в JSON, иначе возникает ошибка. Делать каждое свойство моего класса необязательным кажется ненужной проблемой, поскольку я действительно хочу...

104
Как декодировать свойство с типом словаря JSON в декодируемом протоколе Swift 4

Скажем, у меня есть Customerтип данных, который содержит metadataсвойство, которое может содержать любой словарь JSON в объекте клиента. struct Customer { let id: String let email: String let metadata: [String: Any] } { "object": "customer", "id": "4yq6txdpfadhbaqnwp3", "email":...

104
Как исключить свойства из Codable Swift 4

Новые протоколы Encodable/ Swift 4 Decodableделают (де) сериализацию JSON довольно приятной. Однако я еще не нашел способа детального контроля над тем, какие свойства следует кодировать, а какие декодировать. Я заметил, что исключение свойства из сопутствующего CodingKeysперечисления полностью...

102
Как использовать настраиваемые ключи с протоколом Decodable Swift 4?

Swift 4 представил поддержку собственного кодирования и декодирования JSON через Decodableпротокол. Как мне использовать для этого специальные ключи? Например, скажем, у меня есть структура struct Address:Codable { var street:String var zip:String var city:String var state:String } Я могу...

90
Как декодировать вложенную структуру JSON с помощью протокола Swift Decodable?

Вот мой JSON { "id": 1, "user": { "user_name": "Tester", "real_info": { "full_name":"Jon Doe" } }, "reviews_count": [ { "count": 4 } ] } Вот структура, в которой я хочу ее сохранить (неполная) struct ServerResponse: Decodable { var id: String var username: String var fullName: String var...