Интерфейс
public interface IApiRequest {
@POST("/v1/register")
Observable<ResponseBody> makeRegister(@Body ApiBody.MakeRegister register);
}
Запросы
public class ApiRequest {
private static IApiRequest init(){
return new Retrofit.Builder()
.baseUrl("https://slife.auth.andviro.pw")
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.build().create(IApiRequest.class);
}
public static Observable<ResponseBody> makeRegister(String email, String password){
return init().makeRegister(new ApiBody.MakeRegister(email,password));
}
}
Вызовы
ApiRequest.makeRegister("chhdjd@mail.ru","sadasd22")
.doOnSubscribe(disposable -> {})
.doFinally(() -> {})
.subscribe(responseBody -> {
Log.e("Test", "main= " + responseBody.string());
},Throwable::printStackTrace).dispose();
При запуске получаю ошибку
Exception in thread "main" java.lang.IllegalArgumentException: Unable to create @Body converter for class com.eranewgames.slife.network.ApiBody$MakeRegister (parameter #1)
for method IApiRequest.makeRegister
Проверив код в PostMan, там все работает без проблем. Что я не так сделал в коде? Раньше я работал только с form/data типами. А тут application/json
Retrofit не знает как сериализовать твой объект ApiBody.MakeRegister
. В билдере Retrofit-а укажи подходящий тебе ConverterFactory, например .addConverterFactory(GsonConverterFactory.create())
Виртуальный выделенный сервер (VDS) становится отличным выбором
IntellIJ IDEA JSP не видит объекты, которые я передаю из контроллера
Только начинаю вникать в jms и vaadin так что не судите строго за нубский вопросЕсть простой пример jms чат https://github
Вот я нажал на кнопку Добавить, появилось диалоговое окно с вводом текста, я ввожу текст и нажимаю далее, окно закрывается, и LinerLayout появляется...