2016-06-29 4 views
0

Как использовать Retrofit 2.0, когда мой API возвращает эти комбинации для PUT запросов:Основное использование модернизированных 2.0 с помощью метода PUT

  • 201 - OK - { status: true }
  • 406 - Не Приемлемое - { status: false, info: "string value" }
  • 500 - Не допускается - { status: false, info: "string value" }

Какую модель использовать? С (Boolean и String или String и String)?

И как я могу получить status от этого, потому что response ->rawResponse ->code например равно 500, поэтому я должен получить status = false и info = "sth".

Теперь мое приложение падает с (body = null) при попытке получить эти данные.

ответ

1

Какую модель использовать?

boolean для status String для info

И как я могу получить статус от этого, потому что ответ -> rawResponse -> код, например, равняется 500

В этом случае тело должно быть возвращено на Response.errorBody()

+0

'если (response.body(). isStatus()) {showToast (getApplicationContext(), «Регистрация ok.»); } else { showToast (getApplicationContext(), response.errorBody(). what_should_be_here); } '- Я пробовал это - все равно ничего ... – y07k2

+0

вы не должны использовать' getApplicationContext() 'для обработки ui. Этот фрагмент работает в потоке пользовательского интерфейса? – Blackbelt

+0

Он работает в классе 'Activity' – y07k2

0

Вы можете использовать приведенную ниже модель

public class Response 
{ 
    public Boolean status; 
    public String info; 
} 
Смежные вопросы