Size: a a a

Боль Тимлида

2021 November 17

AB

Aleksandr Bespalov in Боль Тимлида
А есть живые люди использующие джсон схему?
источник

PD

Phil Delgyado in Боль Тимлида
Не настолько стандартизована и жесткая, как XML Schema
источник

СА

Сергей Аксёнов... in Боль Тимлида
В rest я передаю и принимаю сразу объект или массив, в JSON RPC надо вокруг ещё добавить обвязку, всякие request id (они полезные, но хорошо, когда они не обязательны)
источник

AB

Aleksandr Bespalov in Боль Тимлида
json rpc по сути будет про то, что всё в теле передается, а не про то что надо обязательно обмазываться какими то айди просто так
источник

СА

Сергей Аксёнов... in Боль Тимлида
OpenAPI же по сути включает в себя JSON schema в части описания объектов? И да, используется и standalone в автотестах, например
источник

AB

Aleksandr Bespalov in Боль Тимлида
Ну тестировщики местами используют, да
источник

AB

Aleksandr Bespalov in Боль Тимлида
Я как то попробовал для теста и если схему с нуля писать, то это упороться, но возможно я делал что то не то
источник

PD

Phil Delgyado in Боль Тимлида
Ну, сделай свой протокол, а не JSON RPC (который не очень удобен). Но обвязка там настолько тривиальна, что не вижу проблем добавить. Не сложнее, нежели рестовские форматы для query
источник

AB

Aleksandr Bespalov in Боль Тимлида
Ну типа проще написать dto в которую десериализовать по строгим правилам, чем еще сверху схему
источник

СА

Сергей Аксёнов... in Боль Тимлида
Это правда, он не очень приятный формат для ручного описания. Но кажется XML schema ещё хуже)
источник

СА

Сергей Аксёнов... in Боль Тимлида
Я понял. Ты считаешь REST таким золотым стандартом, где всё надо делать по нему. Типа как трушный скрам: если не выполнить один ритуал, это будет уже не скрам.

Я вижу REST именно как framework, на котором реально удобно делать CRUD, и в целом удобно в том же ключе делать вещи, скорее напоминающие RPC. Например curl -X PUT -d "true" /posts/:id/like
источник

СА

Сергей Аксёнов... in Боль Тимлида
(и -X DELETE для анлайка, соответственно)
источник

AB

Aleksandr Bespalov in Боль Тимлида
Рест для работы с ресурсами не подходит для чего либо серьезного
источник

AB

Aleksandr Bespalov in Боль Тимлида
Поэтому говорить что http+json - это рест, нельзя
источник

AB

Aleksandr Bespalov in Боль Тимлида
Дело не в золотом стандарте, это просто не корректно
источник

AB

Aleksandr Bespalov in Боль Тимлида
Когда говорят про рест, говорят как раз про ресурсы, пользователь - ресурс. Нужно делать users/{id} и т.д.
источник

AB

Aleksandr Bespalov in Боль Тимлида
А то как в чате про канбан - они взяли слово "метод" и решили, что в контексте канбана можно использовать его каким то уникальным образом
источник

VS

Vladimir Smirnov in Боль Тимлида
В том то и суть, что рест  это не то что не золотой, это вообще не стандарт
источник

PD

Phil Delgyado in Боль Тимлида
Но REST - это именно концепция организации API и там все вокруг именно этой концепции (начиная с level 2)
Ну и делать CRUD в терминах REST - это вообще плохая идея, он плохо умеет это делать (там нет команд на изменение, а только патчи)
источник

СА

Сергей Аксёнов... in Боль Тимлида
Изменение - это PUT /object/:id . Или ты имел в виду изменение нескольких полей, не трогая остальных?
источник