Код состояния 200, но данные все еще не загружаются на стороне сервера.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Код состояния 200, но данные все еще не загружаются на стороне сервера.

Сообщение Anonymous »


В моем приложении для Android для страницы обновления профиля я использую API, и когда я вызываю API, ответ показывает успех, и я проверяю код состояния 200, но данные не загружаются в базу данных, с помощью Postman данные загружаются правильно, но с моего телефона данные не загружаются,

Раньше файл работал, а сегодня данные не добавляются, даже я не меняю ни одного слова или строки в коде.

API — это API публикации, и он использует данные формы для данных.

Ниже приведен мой код API

Класс обработчика API

import okhttp3.OkHttpClient; импортная модернизация2.Модернизация; импортировать Retrofit2.converter.gson.GsonConverterFactory; общественный класс ApiHandler { частная статическая окончательная строка BASE_URL = "https://rndtd.com/demos/scrapbazar/api/"; частная статическая модернизация; public static Retrofit getRetrofitInstance() { если (модернизация == ноль) { модификация = новый Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create()) .строить(); } возвратная модернизация; } } Интерфейс для конечной точки API

публичный интерфейс ApiInterface { @GET("всепродукты") Call getAllProducts(); @Мультипартия @POST("обновление профиля") Вызов updateUserProfile( @Part("id") int id, @Part("first_name") Строка имя_пользователя, @Part("email") Строка электронной почты, @Part MultipartBody.Изображение детали ); } Метод вызова API

public void updateProfile() { ApiInterface apiInterface = getRetrofitInstance().create(ApiInterface.class); int id = SaveSharedPreference.getUserId (это); Строка userName = etUserName.getText().toString(); Строка электронной почты = etEmail.getText().toString(); if (userName.isEmpty() || email.isEmpty() || selectedImageUri == null) { мПрогресс.отклонить(); Toast.makeText(this, «Все поля обязательны», Toast.LENGTH_SHORT).show(); возвращаться; // Выходим из метода, если какое-либо поле отсутствует } если (selectedImageUri != null) { Строка fileName = getFileName(selectedImageUri); Файл imageFile = новый файл (getCacheDir (), имя файла); пытаться { InputStream inputStream = getContentResolver().openInputStream(selectedImageUri); FileOutputStream fileOutputStream = новый FileOutputStream (imageFile); буфер байт[] = новый байт[1024]; число байтовRead; while ((bytesRead = inputStream.read(buffer)) != -1) { fileOutputStream.write(буфер, 0, bytesRead); } inputStream.close(); fileOutputStream.close(); } поймать (IOException е) { е.printStackTrace(); } RequestBody imageRequestFile = RequestBody.create(MediaType.parse(getMimeType(selectedImageUri)), imageFile); MultipartBody.Часть изображенияЧасть = MultipartBody.Часть.createFormData("изображение", imageFile.getName(), imageRequestFile); Log.d("Данные запроса", "ID: " + id); Log.d("Запрос данных", "Имя пользователя: " + имя пользователя); Log.d("Данные запроса", "Электронная почта: " + адрес электронной почты); Log.d("Запросить данные", "изображение: " + imagePart); Call call = apiInterface.updateUserProfile(id, userName, email, imagePart); call.enqueue(new Callback() { @Override public void onResponse (вызов Call, ответ Response) { int responseCode = response.code(); Toast.makeText(EditProfile.this, "код: " + код ответа, Toast.LENGTH_SHORT).show(); если (response.isSuccessful()) { String msg = «Клиент успешно обновлен»; Toast.makeText(EditProfile.this, "" + msg, Toast.LENGTH_SHORT).show(); заканчивать(); } еще { мПрогресс.отклонить(); Toast.makeText(EditProfile.this, «Ответ не успешен», Toast.LENGTH_SHORT).show(); } } @Override public void onFailure(Call call, Throwable t) { мПрогресс.отклонить(); Log.e("Тег", "Ошибка: " + t.getLocalizedMessage()); Toast.makeText(EditProfile.this, «Ошибка» + t.getLocalizedMessage(), Toast.LENGTH_SHORT).show(); } }); } } Когда я проверяю logcat, данные отображаются правильно:

Мой логин в logcat:

Идентификатор: 2

Имя пользователя: мое имя

Электронная почта: myName@gmail.com

изображение: okhttp3.MultipartBody$Part@2afca0d
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»