测试已测试 | ✓ |
Lang语言 | SwiftSwift |
许可证 | MIT |
发布上次发布 | 2016年10月 |
SPM支持 SPM | ✗ |
由 evermeer 维护。
依赖项 | |
Alamofire | >= 0 |
XMLDictionary | >= 0 |
EVReflection | >= 0 |
如果您有问题并且不想创建一个问题,那么我们可以(EVReflection 是 AlamofireJsonToObjects 的基础)
使用 AlamofireXmlToObjects,从 XML 源获取并解析对象变得极其简单。无需属性映射。反射用于将值放入对应的属性中。
AlamofireXmlToObjects 依赖于以下库
如果您有一个 JSON 服务并希望有相同的功能,那么请查看 AlamofireJsonToObjects。
目前,master 分支适用于 Swift3。如果您想继续使用 Swift 2.2(或 2.3),请切换到 Swift2.2 分支。运行测试以查看 AlamofireXmlToObjects 的操作。
'AlamofireXmlToObjects' 通过依赖管理器 CocoaPods 提供。
您只需将以下两行添加到 Podfile 中,即可将其添加到您的 workspace 中:
use_frameworks!
pod "AlamofireXmlToObjects"
您还必须在 Swift 文件的顶部添加一个导入,如下所示
import AlamofireXmlToObjects
class WeatherResponse: EVObject {
var location: String?
var three_day_forecast: [Forecast] = [Forecast]()
}
class Forecast: EVObject {
var day: String?
var temperature: NSNumber?
var conditions: String?
}
class AlamofireXmlToObjectsTests {
func testResponseObject() {
let URL = "https://raw.githubusercontent.com/evermeer/AlamofireXmlToObjects/master/AlamofireXmlToObjectsTests/sample_xml"
Alamofire.request(.GET, URL, parameters: nil)
.responseObject { (response: Result< WeatherResponse, NSError>) in
if let result = response.value {
// That was all... You now have a WeatherResponse object with data
}
}
}
}
上述代码将解析以下 XML 到对象中
<wheather>
<location>Toronto, Canada</location>
<three_day_forecast>
<forecast>
<conditions>Partly cloudy</conditions>
<day>Monday</day>
<temperature>20</temperature>
</forecast>
<forecast>
<conditions>Showers</conditions>
<day>Tuesday</day>
<temperature>22</temperature>
</forecast>
<forecast>
<conditions>Sunny</conditions>
<day>Wednesday</day>
<temperature>28</temperature>
</forecast>
</three_day_forecast>
</wheather>
AlamofireJsonToObjects 基于以下库: EVReflection。您可以使用 EVReflection 的所有功能,包括属性映射、转换器、验证器和键清理。有关更多信息,请参见 EVReflection。
AlamofireXmlToObjects 在 MIT 3 许可证下提供。有关更多信息,请参阅 LICENSE 文件。
请参阅我的其他开源 iOS 库