我正在尝试使用 Retrofit 2 创建天气应用程序,现在我很难正确设置呼叫。
这是有效的 URL:
http://api.openweathermap.org/data/2.5/weather?q=London&APPID=MY_API_KEY
所以,我有我的 API 密钥和 BASE URL 是:http ://api.openweathermap.org .. 这是我改造服务中的方法:
@GET("/data/2.5/weather?q={city}/&APPID={api}")
Observable<WeatherResponse> getWeather(@Path("city") String city, @Path("api") String api);
我得到的错误是:
java.lang.IllegalArgumentException:URL 查询字符串“q={city}/&APPID={api}”不能有替换块。对于动态查询参数,使用@Query。
所以我尝试这样:
@GET("/data/2.5/weather?{city}/&APPID={api}")
Observable<WeatherResponse> getWeather(@Query("city") String city, @Path("api") String api);
我得到了同样的错误......任何人都知道这里有什么问题,我的网址有什么问题?