ios - 在 SWIFT 4 中成功连接后未找到 JSON 解析数据
问题描述
我是新来的。试图从页面解析数据。由于某种原因,连接建立成功,但数据未通过。请帮我解决问题。这是代码。
import UIKit
import Alamofire
import SwiftyJSON
class ViewController: UIViewController {
@IBOutlet weak var termsLabel: UILabel!
let baseURL = "http://grandthecompany.com/admin/terms_api.php"
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
getTermsData(url: baseURL)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
//MARK: - Networking
/***************************************************************/
func getTermsData(url: String) {
Alamofire.request(url, method: .get)
.responseJSON { response in
if response.result.isSuccess {
print("Sucess! Got the Terms data")
let termsJSON : JSON = JSON(response.result.value!)
self.updateTermsData(json: termsJSON)
} else {
print("Error: \(String(describing: response.result.error))")
self.termsLabel.text = "Connection Issues"
}
}
}
//MARK: - JSON Parsing
/***************************************************************/
func updateTermsData(json : JSON) {
if let termsResult = json[0].string{
termsLabel.text = termsResult
}else{
termsLabel.text = "No data found"
}
}
}
解决方案
您正在访问 json 数组的第一个元素。json[0]["terms"].string
会给你术语元素。
func updateTermsData(json : JSON) {
if let termsResult = json[0]["terms"].string{
termsLabel.text = termsResult
}else{
termsLabel.text = "No data found"
}
}
推荐阅读
- postgresql - 如何使用光标打印我添加到 postgresql 表中的新内容?
- reactjs - 使用 Storybook 进行 React-table[v7] 渲染
- reactjs - 如何使用钩子更新数组 React Native 中一个对象的状态
- visual-studio-code - vs code C++ 包含路径列表
- php - Laravel 6 Paypal 订阅 srmklive/paypal 问题
- google-cloud-dataflow - 如何将 tab(\t) 指定为数据流模板中文本的分隔符?
- azure - Azure CosmosDB REST API 省略了数据资源管理器返回的结果
- c# - C# UWP How to set the background behind the application to black
- haskell - 流上的这种折叠/扫描概念是什么?
- c# - 为什么此选择器未按预期选择项目?