【发布时间】:2016-11-24 19:07:55
【问题描述】:
我正在尝试使用从 Alamofire 获取的数据更新 UITableView。
我的后端 web 服务返回数据如下:
{"hashtags":["test","test2"]}
我的“swift”代码如下所示:
Alamofire.request("\(serverURL)/users/\(username)/hashtags")
.validate()
.responseJSON { response in
switch response.result {
case .success:
DispatchQueue.main.async(execute: {
if let jsonData = response.result.value as? [String: AnyObject] {
for hashtag in jsonData {
print(JSON(hashtag))
print(hashtag)
if let userHashtags = SingleHashtag.fromJSON(JSON(hashtag)){
for hash in userHashtags.hashtagText {
print(hash)
self.items.add(hash)
函数SingleHashtag.fromJSON 是类的一部分:
class SingleHashtag: NSObject {
var hashtagText: [String]
init(hashtagText: [String]) {
self.hashtagText = hashtagText
super.init()
}
class func fromJSON(_ json: JSON) -> SingleHashtag? {
let hashtagText:[String] = json["hashtags"].arrayValue.map { $0.stringValue}
return SingleHashtag(hashtagText: hashtagText)
}
}
我无法让它工作。问题在于这两行:
print(JSON(hashtag))
print(hashtag)
打印:
unknown
("hashtags", <__NSArrayI 0x170c22200>(
test,
test2
)
)
因为我在那里传递了unknown,所以其余的代码没有被执行。我在这里错过了什么?
【问题讨论】:
标签: ios swift alamofire swifty-json