У меня проблема с запросом на модификацию @POST, всякий раз, когда я пытаюсь отправить объект из приложения для Android, он в основном отправляет ноль, но когда я делаю это из Почтальона, все идет хорошо.
Вот запрос почтальоначто я отправляю
Address: http://localhost/posts/1/comments/3
{
"title": "Bravo nasiasfaf",
"description": "Samo sloga Srbina spasavaasfsaf"
}
Вот метод для конечной точки
@POST("posts/{postId}/comments/{userId}")
Call<CommentDTO> createComment(@Path("postId") int postId, @Path("userId") int userId, @Body CommentDTO commentDTO);
CommentDTO
public class CommentDTO {
private String title;
private String description;
public CommentDTO(String title, String description) {
this.title = title;
this.description = description;
}
}
Кнопка с прослушивателем для вызова
final EditText naslov_comm = view.findViewById(R.id.naslov_comm);
final EditText opis_comm = view.findViewById(R.id.opis_comm);
objavicom_btn = view.findViewById(R.id.objavicom_btn);
objavicom_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
CommentDTO commentDTO_ala = new CommentDTO(naslov_comm.getText().toString(),
opis_comm.getText().toString());
sendNetworkRequest(commentDTO_ala);
}
});
Метод сетевого запроса от слушателя кнопки
private void sendNetworkRequest(CommentDTO commentDTO) {
Retrofit.Builder builder = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create());
Retrofit retrofit = builder.build();
RestAPI client = retrofit.create(RestAPI.class);
Call<CommentDTO> call = client.createComment(id_post, user_pref, commentDTO);
call.enqueue(new Callback<CommentDTO>() {
@Override
public void onResponse(Call<CommentDTO> call, Response<CommentDTO> response) {
Toast.makeText(getActivity(), "Uspesno ste objavili komentar",
Toast.LENGTH_LONG).show();
}
@Override
public void onFailure(Call<CommentDTO> call, Throwable t) {
Toast.makeText(getActivity(), "Komentar nije prosao",
Toast.LENGTH_LONG).show();
}
});
Как мне сделать так, чтобы gson и gson создали такую же форму JSON, как в своем запросе почтальона?