Я новичок в модернизации.Я просто добавляю строку в свою базу данных с использованием модернизации, но я использовал параметры поля в своем интерфейсе API, как этот.
Call<String> matchWith(@Field("fbid") String fbid, @Field("matchwith") String matchwith);
Трудно писать для больших объектов, поэтому я решил использовать аннотацию @Body
.Но теперь его размещение пустой строки / объекта в моей базе данных MySQL.(С аннотацией @Field
в интерфейсе API мой код вставляет данные правильно)
Вот мой код
@POST("/insertuser.php")
Call<User> postUser(@Body User user);
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://myurl.com")
.addConverterFactory(GsonConverterFactory.create())
.build();
Connect connect = retrofit.create(Connect.class);
Call<User> call = connect.postUser(user);
call.enqueue(new Callback<User>() {
@Override
public void onResponse(Call<User> call, Response<User> response) {
}
@Override
public void onFailure(Call<User> call, Throwable t) {
}
});
В моем классе объектов я использовал @SerializedName
и @Expose
до сих пор дооснащениявставляет пустое Я пытался только с @SerilizedName
и просто с @Expose
, после этого я ничего не использовал, но я получил тот же результат.