【发布时间】:2016-11-03 18:02:42
【问题描述】:
我有一个城市列表,我想查找每个城市的天气。 例如,我的列表是城市 = {伦敦、柏林、海丁顿} 所以,我的代码是为每个城市调用 api 服务。
在我的活动中,这就是我请求每个城市的天气的方式:
for(String element : cities) {
presenter.getApi(element);
}
在实现观察者的演示者中,这是响应结果的代码:
@Override
public void onNext (ResultObject result) {
// getName() function return city name
log.d("Result", result.getMain().getName() + result.getWeather().getDescription();
}
因为这个函数(onNext)不是分别作为请求来的(我们先请求伦敦,然后是柏林,然后是headington),所以我不知道如何区分我的伦敦天气请求和柏林。
另外,在 API 响应中,它并不总是附加请求城市。如果我请求海丁顿,响应是牛津。
使用Get的Api服务,链接如下(返回一个observable) http://api.openweathermap.org/data/2.5/weather?q=headington&appid=90faa1669716319e787ca1ab5da48cbc
【问题讨论】:
-
我希望有一些 RxJava 运算符为每个请求添加 uniq 参数。