Size: a a a

2020 February 20

p

pragus in Go-go!
Yuriy Gorlichenko
Вообще возможности протокола использовать плохо. Да.
Лучше свой костыль пилить. Стандартизации она вообще не должна быть. Всё верно
На rest нет стандарта
источник

YG

Yuriy Gorlichenko in Go-go!
pragus
На rest нет стандарта
Стандартов вообще нет. Есть рекомендации.
Которые есть на http.
Который является базой для rest.
источник

p

pragus in Go-go!
Yuriy Gorlichenko
Будет не resfull
В http есть Reason code и текст
Ответов там 100 (4xx ответы)
Есть незамапленные, так что можете свободные использовать под свои нужды.
А потом вы столкнетесь с каким-нибудь интересным балансером, который не понимает кастомные коды.

Если что, я видел людей которые и на DELETE отдают тело и у них все работал, только остальным больно
источник

J

Justify in Go-go!
А что если совмещать оба варианта? Просто иногда хочется возвращать что-то информативнее reason phrase.
Например GET /users/1/posts/1 возвращает 404 not found. Как клиент узнает, что именно not found, пользователь или пост?
источник

YG

Yuriy Gorlichenko in Go-go!
pragus
А потом вы столкнетесь с каким-нибудь интересным балансером, который не понимает кастомные коды.

Если что, я видел людей которые и на DELETE отдают тело и у них все работал, только остальным больно
Я в идёт много какие проекты, в том числе и те в которых Get с телом прилетал.
Можно - не значит нужно.

Если балансер не понимает "кастомные" ответы - его надо менять.
источник

YG

Yuriy Gorlichenko in Go-go!
Justify
А что если совмещать оба варианта? Просто иногда хочется возвращать что-то информативнее reason phrase.
Например GET /users/1/posts/1 возвращает 404 not found. Как клиент узнает, что именно not found, пользователь или пост?
Запрос на пост а не на юзера.
источник

J

Justify in Go-go!
А если пользователя с id 1 не существует?
источник

а

а кто это in Go-go!
Justify
А если пользователя с id 1 не существует?
и что
источник

а

а кто это in Go-go!
пост есть, указывает на юзера с id 1, юзера нет
источник

PT

Pax au Telemanus in Go-go!
привет никто не сталкивался c GetWindowThreadProcessId?
источник

ВС

Владимир Столяров in Go-go!
pragus
А потом вы столкнетесь с каким-нибудь интересным балансером, который не понимает кастомные коды.

Если что, я видел людей которые и на DELETE отдают тело и у них все работал, только остальным больно
Оооо, скажите это elasticsearch-у, у которого запрос на поиск идёт get-ом с телом
источник

J

Justify in Go-go!
Если нет пользователя, нужно будет вернуть 404. Или если нет поста, то тоже нужно будет вернуть 404. Только как клиент узнает, чего именно не существует, юзера или поста?
источник

PT

Pax au Telemanus in Go-go!
Justify
Если нет пользователя, нужно будет вернуть 404. Или если нет поста, то тоже нужно будет вернуть 404. Только как клиент узнает, чего именно не существует, юзера или поста?
ну кроме 404 еще есть мессадж
источник

PT

Pax au Telemanus in Go-go!
404
{
"message": "User not found"
}
источник

J

Justify in Go-go!
Заголовок какой-то?(не reason phrare)
источник

J

Justify in Go-go!
Это уже к сожалению не restful, как я понял(
источник

PT

Pax au Telemanus in Go-go!
с чего это?
источник

p

pragus in Go-go!
Justify
А что если совмещать оба варианта? Просто иногда хочется возвращать что-то информативнее reason phrase.
Например GET /users/1/posts/1 возвращает 404 not found. Как клиент узнает, что именно not found, пользователь или пост?
А ещё можно сделать get /blabla/foo и тоже получить 404
источник

PT

Pax au Telemanus in Go-go!
Pax au Telemanus
привет никто не сталкивался c GetWindowThreadProcessId?
up
источник

J

Justify in Go-go!
Pax au Telemanus
с чего это?
Мне так сказали
источник