Is SwiftyJson capable of converting a custom swift class to a json string?

谁说我不能喝 提交于 2019-12-03 12:31:21

UPDATE

OP is now happy with EVReflection. So I assume that at this moment it's the best choice.

ORIGINAL ANSWER

Since Swift reflection possibilities is not yet such rich there is no ultimate solution now like google-gson for Java.

Libraries like SwiftJSON and Swift ObjectMapper are just sugared NSJSONSerialization and require you to define mappings from json fields to object properties.

But things are changing and you can try out JsonSerializerSwift. I have not yet used it but it use Swift reflection and seems to work fine.

Also check out Swift Mirrors and JSON by Chris Eidhof article. It explains how JSON serialization using reflection possibilities works.

May be this will helps: https://github.com/PonyCui/PPJSONSerialization

You use serialize to serialize PPJSONSerialization classes to JSON String or JSON Data, it's a perfect way to deliver data to server.

In Swift 4, there's now the Codable framework that's baked in. From my research this is the best option for those who can upgrade to the latest version of the language.

If the property names are identical it's just a few lines to call up a json decoder, and if they're different you just have to write a small switch statement to map them.

I'm sure in the coming months a library will pop up to take care of standard mapping situations but other than that things are looking pretty good out of the box.

check it here: http://benscheirman.com/2017/06/ultimate-guide-to-json-parsing-with-swift-4/

From Swift4 we can use JSONEncoder itself to convert Object model to Json String.

For that we just needs to extends the Object with Codable if the json keys are standard.

Reference :

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!