Рекомендуемый наблюдаемый тип для REST API - PullRequest
0 голосов
/ 06 января 2019

Я использую Retrofit и OkHttp3, а также RxJava2 для асинхронного.

Есть ли причина, по которой я должен использовать что-то кроме Single в возвращаемом значении службы Retrofit?

Обычно наблюдаемые изменяются, и onNext вызывается снова, но в REST onNext вызывается только один раз, когда запрос успешен.

1 Ответ

0 голосов
/ 09 января 2019

Из документации Single :

Single - это нечто вроде Observable, но вместо того, чтобы выдавать серию значений - от нуля вообще до бесконечного числа - он всегда либо выдает одно значение, либо уведомление об ошибке.

Это определение в точности соответствует случаю вызовов API. Использование Single лучше документирует назначение вызовов API.

Я использовал Single в качестве возвращаемого типа интерфейсов Retrofit API в нескольких проектах, и его было очень удобно и просто использовать.

Я обычно сочиняю Single с преобразователем, который преобразует ошибки соединения и ответы об ошибках в соответствующие исключения уровня домена.

Если по какой-то причине вам нужен Наблюдаемый, а не Одиночный, вы все равно можете конвертировать его.

...