我对Swift 2的新版本Alamofire有疑问
Alamofire.request(.POST, urlString, parameters: parameters as? [String : AnyObject])
.responseJSON { (request, response, result) -> Void in
let dico = result as? NSDictionary
for (index, value) in dico! {
print("index : \(index) value : \(value)")
}
}
在本节中,我想将结果投射到NSDictionary中。但是当我编译并设置一个断点时,调试器说dico为零。如果我使用debugDescription打印结果,则它不是nil,并且包含我所期望的内容。如何转换Result变量?
可接受的答案非常有用,但是随着Alamofire 3.0.0的引入,一些重大更改会影响此实现。
该迁移指南有进一步的解释,但我会强调与实际的解决方案的人。
响应
所有响应序列化器(响应除外)都返回通用的响应结构。
响应类型
结果类型已重新设计为不存储NSData的双泛型类型。 在这种.Failure
情况下。
还应考虑到Alamofire会将任何已完成的请求视为成功,而不管响应的内容如何。因此,您需要先打上“ a”
.validate()
才能.responseJSON()
打.Failure
案件。在此处了解更多信息。
更新的代码:
let url = "http://api.myawesomeapp.com"
Alamofire.request(.GET, url).validate().responseJSON { response in
switch response.result {
case .Success(let data):
let json = JSON(data)
let name = json["name"].stringValue
print(name)
case .Failure(let error):
print("Request failed with error: \(error)")
}
}
以供参考:
问题内容: 我写了JUnit5扩展。但是我找不到方法如何获得测试结果。 扩展看起来像这样: 有什么提示如何获得测试结果? 问题答案: 正如其他答案所指出的那样,JUnit会将失败的测试与异常进行通信,因此可以使用来了解发生的情况。请注意,这很容易出错,因为以后运行的扩展程序仍可能无法通过测试。 另一种方法是注册自定义TestExecutionListener。不过,这两种方法都有点round回
我的数据库中有一个小特例,我需要从两个具有一对一关系的不同表中获取数据,以获得有用的结果。获取看起来像这样: 当然,我在实际代码中使用了-这只是一个示例。我的问题是是否以及如何将jOOQ中获取的数据写入POJO。我不确定是否有办法让jOOQ为我生成这个POJO,但如果我必须自己编写它,我假设我需要像适配器这样的东西以及像作为数据类型的转换器。 我看到有可能出现RecordMapperProvide
问题内容: 我正在尝试使用ES作为MongoDB的索引。我已经成功地将它们集成在一起,但是我发现搜索API相当复杂且令人困惑。Java API也不太有用。 我可以找到完全匹配的内容,但是如何获得此结果?这是我的代码: 问题答案: 我不确定我是否理解您的问题。 如果要根据示例打印searchResponse的结果,则应为以下内容: 我正在使用Gson将Json响应转换为FireWall(POJO)。
我做了一个ping实验,结果是: 我需要的是收到的数据包数,丢包数,min,avg和max。 我试图使用
问题内容: 我从ResultSet获取Date对象时遇到问题。在数据库中,它具有一个值(例如2014-08-01),并且从resultSet获取它之后,它具有另一个值(2014-08-31)。我知道ResultSet的getDate方法返回java.sql.Date,但是我尝试了一些解决方案,例如: 或 但问题是相同的。如果我尝试, 它将抛出NullPointerException。 有人可以解释
问题内容: 这个可以吗 ? 然后在尝试打印时 我有一个错误 问题答案: 尝试mysql_fetch_field函数。 例如: