美文网首页
Swift JSON编码时支持Camel Case和Snake

Swift JSON编码时支持Camel Case和Snake

作者: ray_1942 | 来源:发表于2018-07-09 15:29 被阅读0次

    🤔🤔🤔

    Swift 4.0引入了Codable,但是有个麻烦的问题:如果JSON数据的key命名格式是snake_case的话,我们必须创建自己的CodingKeys来告诉苹果怎么转换。
    但是在Swift 4.1中,苹果给JSONDecoder引入了一个属性keyDecodingStrategy;对应的JSONEncoder引入了一个属性keyEncodingStrategy。这样我们就不需要设置定义CodingKeys了。只需要在decoding的时候把keyDecodingStrategy设置为.convertFromSnakeCase;在encoding的时候把keyEncodingStrategy设置为.convertToSnakeCase

    属性名策略说明:

    CamelCase策略,对象属性:personId,序列化后属性:persionId

    PascalCase策略,对象属性:personId,序列化后属性:PersonId

    SnakeCase策略,对象属性:personId,序列化后属性:person_id

    KebabCase策略,对象属性:personId,序列化后属性:person-id

    相关文章

      网友评论

          本文标题:Swift JSON编码时支持Camel Case和Snake

          本文链接:https://www.haomeiwen.com/subject/goiiuftx.html