首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Swift 4.可解码+ alamofire

Swift 4.可解码+ alamofire
EN

Stack Overflow用户
提问于 2018-01-30 08:54:59
回答 1查看 776关注 0票数 0

我在解码JSON.Trying以获得日出和日落时间时遇到了麻烦,但什么都不起作用。帮助

代码语言:javascript
运行
复制
func getData(latitude: String,longtitude: String) {
    let url = URL(string: "https://api.sunrise-sunset.org/json?lat=\(latitude)&lng=\(longtitude)")
    Alamofire.request(url!).responseJSON { (response) in
        print(response)
        guard let data = response.data else { return }
        do {
            let st = try JSONDecoder().decode(results.self, from: data)
            print(st.sunrise)
        }
        catch {
            print("error")
        }
    }
}
EN

回答 1

Stack Overflow用户

发布于 2018-07-10 05:08:32

您需要的也是一个根结构来解码,如下所示

代码语言:javascript
运行
复制
struct Root : Decodable {
   let status: String
   let results: results
}

struct results: Decodable {
    let sunrise : string 
    //other struc proporties as well in here 
let astronomical_twilight_end: String
}

所以你可以这样做

代码语言:javascript
运行
复制
let root = try JSONDecoder().decode(Root.self, from: data)

让result = root.result

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48512332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档