在過去的三天裏,我一直在試圖取得一些進展,但無論我嘗試什麼,我似乎都無法圍繞如何解決這個問題問題。這個答案是讓我幾乎所有的方式(但不完全):Capturing data from Alamofire爲Alamofire創建回調函數,我可以用它來操縱JSON
我想要做的是獲得一個應用程序的評論數。由於Alamofire異步執行網絡調用,因此我試圖創建一個回調,然後允許我實際使用它返回的JSON。在下面的代碼中,我試圖在我的Alamofire函數外部獲得評論JSON,並將其分配給reviewJSON變量,以便我可以使用它。我究竟做錯了什麼?
import UIKit
import SwiftyJSON
import Alamofire
class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
let appStoreReviewsURL: String = "https://itunes.apple.com/de/rss/customerreviews/id=529479190/json"
func getDataFromInterwebs(theURL: String, complete:(reviews: JSON) ->()) {
Alamofire.request(.GET, theURL).responseJSON { response in
guard response.result.error == nil else {
print("error calling GET ")
print(response.result.error!)
return
}
if let value = response.result.value {
let appReviewsFromAppStore = JSON(value)
complete(reviews: appReviewsFromAppStore)
}
else {
print("error parsing")
}
}
}
override func viewDidLoad() {
super.viewDidLoad()
var reviewJson = getDataFromInterwebs(appStoreReviewsURL){ completion in
return completion}
print(reviewJson)
}
你是不是解析'JSON'正確。粘貼你的JSON數據,以便我們可以更好地幫助你。 – Dershowitz123
嗨,Json顯示在這裏:https://itunes.apple.com/de/rss/customerreviews/id=529479190/json – Patrick