com.google.gson.stream.MalformedJsonException: используйте JsonReader.setLenient (true), чтобы принять искаженный JSON в строке 1, путь 1, столбец $ - PullRequest
1 голос
/ 18 мая 2019

Я получаю исключение при отправке запроса с модификацией. Пробовал различные решения, каждый раз давал уродливое исключение.

вот мой ответ JSON

{
    "type": "admin",
    "user": "admin"
}

Модель

public class LoginResponse {

@SerializedName("type")
@Expose
private String type;
@SerializedName("user")
@Expose
private String user;

public String getType() {
return type;
}

public void setType(String type) {
this.type = type;
}

public String getUser() {
return user;
}

public void setUser(String user) {
this.user = user;
}

}

ApiIntreface.java

@FormUrlEncoded
    @Headers("Content-Type: application/json" )
    @POST("login.php")
    Call<LoginResponse> login(
            @Field("user") String user,
            @Field("pass") String pass);

Api.java

public static ApiInterface getClient(){
    if (retrofit == null){
        Gson gson = new GsonBuilder()
                .setLenient()
                .create();

        OkHttpClient client = new OkHttpClient();

        retrofit = new  Retrofit.Builder()
                .baseUrl(BASE_URL)
                .client(client)
                .addConverterFactory(GsonConverterFactory.create())
                .build();

MainActivity

Call<LoginResponse> call = Api.getClient().login(user,pass);
            call.enqueue(new Callback<LoginResponse>() {
                @Override
                public void onResponse(Call<LoginResponse> call, Response<LoginResponse> response) {
                    Toast.makeText(getApplicationContext(),"Success",Toast.LENGTH_LONG).show();
                }
                @Override
                public void onFailure(Call<LoginResponse> call, Throwable t) {
                    Toast.makeText(getApplicationContext(),t.getMessage(),Toast.LENGTH_LONG).show();
                }
            });

Формат json в порядке. все еще это показывает то же самое исключение. Я использую модификацию 2.5.0 Заранее спасибо за любой ответ.

...