как использовать Retrofit2 @POST - PullRequest
0 голосов
/ 05 ноября 2018

Мне нужно получить данные с этого URL https://openweathermap.org/.

Теперь я работаю с этим API

http://api.openweathermap.org/data/2.5/weatherq=(cityname)&appid=(myAPIKEY)

Так что у меня уже есть этот код ниже для работы

Click to see my code

Это мой базовый URL:

Gson gson = новый GsonBuilder (). SetDateFormat ("гггг-ММ-дд'ТХЧ: мм: ссЗ"). Создать ();

    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl("http://api.openweathermap.org/data/2.5/")
            .addConverterFactory(GsonConverterFactory.create(gson))
            .build();

Кто-нибудь знает, как передать cityName в качестве параметра?

Ps. Retrofit2

Ответы [ 3 ]

0 голосов
/ 05 ноября 2018

Вы можете использовать параметр @ Query для предоставления любого параметра, например

@GET("weather")
Call<WeatherEnt> getWeatherData(@Query("q") String query,
                                @Query("units") String units,
                                @Query("appid") String appid);

и передайте cityName и другие значения (как будто это требуется) в этих параметрах при вызове этой конечной точки

0 голосов
/ 05 ноября 2018

Спасибо всем. Это ответ.

@ GET ( "погода") Вызовите loadPhotoList (@Query ("q") String cityName, @ Query ("appid") String appid);

0 голосов
/ 05 ноября 2018

Вам придется изменить свой второй метод следующим образом:

@POST("http://api.openweathermap.org/data/2.5/weatherq={cityName}&appid=1273091827310988273")
Call<Example> loadPhotoList(@Path("cityName") String cityName);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...