Ios 这个Rx代码是否订阅JSON本身的更改?

Ios 这个Rx代码是否订阅JSON本身的更改?,ios,json,swift,rx-swift,Ios,Json,Swift,Rx Swift,我已经使用URLSession成功解析了JSON数据。然后将数据传递到Rx序列,最后将数据绑定到tableView。现在,我的问题是,是否观察到JSON数据本身?我的意思是,如果远程JSON数据发生变化,我的订户会触发吗?我猜不会,而且您还需要以某种方式将URLSession包装在一个观察器中。但是我该怎么做呢?不管怎样,代码如下: func getJSON() { guard let url = URL(string:"https://api.myjson.com/bins/s

我已经使用
URLSession
成功解析了
JSON
数据。然后将数据传递到
Rx
序列,最后将数据绑定到
tableView
。现在,我的问题是,是否观察到
JSON
数据本身?我的意思是,如果远程
JSON
数据发生变化,我的
订户会触发吗?我猜不会,而且您还需要以某种方式将
URLSession
包装在一个观察器中。但是我该怎么做呢?不管怎样,代码如下:

func getJSON() {
        guard let url = URL(string:"https://api.myjson.com/bins/sbmzi") else { return }

        URLSession.shared.dataTask(with: url) { data, response, error in
            guard let data = data else { return }
            do {
                let jsonDecoder = JSONDecoder()
                jsonDecoder.keyDecodingStrategy = .convertFromSnakeCase
                jsonDecoder.dateDecodingStrategy = .iso8601

                let decodedJson = try jsonDecoder.decode(People.self, from: data)
                self.parsedJson.accept(decodedJson.people)

            } catch {
                print(error)
            }
        }.resume()
    }
viewDidLoad
中:

getJSON()
self.parsedJson.subscribe(onNext:{

print(“是否观察到JSON数据本身?

存储属性
parsedJson
具有类型
Observable
,因此,是的,它是可观察的。您可以多次修改
parsedJson
存储属性并重新订阅。例如,当用户点击按钮刷新数据源时,您可以执行此操作

如果远程JSON数据发生更改,我的订户会触发吗?


否。要了解更改,您必须在代码中或通过计时器触发
getJSON
方法,或使用Http协议。重要提示:在使用web套接字数据任务之前,必须在服务器端启用web套接字协议。

好的,很好,感谢您的澄清。I gues最终用户只需滚动到顶部,w这将触发
getJSON
方法,该方法将向观察者提供新数据。酷!