169 похожих чатов

Если с точки rest full, то restore это патч так

как ничего не удаляется навсегда.
Если нет такого кода, который покрывает состояние (такое бывает?), то выдается ближайший по спецификации и в response передается уточнение.

Вебсокетам не нужен rest, он передает не состоение, а message с изменениями от сервера по открытым каналам, это другой тип запросов, и другой способ его обработать.

graphql это другой архитектурный стиль, где сервер становится базой данных.


Нам нужно было сделать api, и было оговорено, что для клиента удобен restfull.

1 ответов

12 просмотров

Rest, restfull это все баззворды, есть только транспорты и тот факт стоит ли завязываться на особенности протокола конкретного транспорта или нет. Например что проще - передать объект {action: "get", table: "users", id: 212} и получить ответ {data: {id: 212, firstName: "vasya"}, error: null} или ошибку {data: null, error: "permission_denied"} через http-post и точно также просто получить на сервере и обработать или парится с http-протоколом вспоминая нюансы что для передачи экшна нужно укзать метод GET, а таблицу-айдишник через строку пути /users/212 (причем еще нужно не забыть правильно закодировать) а вместо просто текстовой ошибки нужно вспоминать или искать какой там код в спецификации. И как только экшен который мы хотим передать не нашелся в списке http-методов или для нужной нам ошибки не нету http-кода то уже придется выдумывать собственную схему как передать дополнительные данные. Или пример что если хотим сообщить серверу что кроме юзера нужно вытащить еще и список его папок? Можно конечно пытаться смоделировать через строку запроса типа GET /user/212?include=folders,posts но разве это не получится точно такой же кастомный формат схемы запросов который к тому же нужно парсить и он более ограниченный чем json так почему бы сразу не воспользоваться json-объектами где можно описать любую вложенность? Ну и возможнось очень просто сменить транспорт на вебсокеты не переписывая весь код обработки запросов и ошибок мне кажется тоже немаловажна. > Вебсокетам не нужен rest, он передает не состоение, а message с изменениями от сервера по открытым каналам, это другой тип запросов, и другой способ его обработать. По вебсокетам можно передавать любые данные не только изменения от сервера а и обычные запросы и ответы за данными. Зачем такой разброс когда одни данные будут передаваться по http а другие по вебсокетам не проще ли унифицировать способ общения с сервером и упростить кодовую базу?

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Я вот подумал. SSE выполняет операции максимум с 64-битной точностью. А FPU - всегда с 80-битной. Разве не должно быть FPU точнее тогда?
The Bird of Hermes
13
как быть с принтером? такой подход прокатит?
zamtmn
12
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Я не понимаю, это троллинг или что? Швабрика поддерживают, который буквально пишет на ассемблере взаимодействия с винапи. Я это ещё написал загрузчик и хоть что-то изучаю в о...
Shadow Akira
6
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Привет. Подскажите, как правильно сматчить лист фиксированного размера, чтобы компилятор не говорил мне о неполном паттерне? Допустим что-то такое [x', y'] = sort [x, y]?
Arseny
8
Карта сайта