Vladimir
и обычно php
Сергей Rekryt
Дмитрий
Дмитрий
это вообще http протокол?
Сергей Rekryt
вот пример запроса, в котором вызывается несколько задач и получаются результаты для них
Дмитрий
я читаю на хабре статью, я так понимаю это какой-то другой тип запроса
Дмитрий
протокола точней
Сергей Rekryt
да это поверх http просто json/application в content-type
Сергей Rekryt
https://www.jsonrpc.org/specification
Дмитрий
не понимаю тогда
Дмитрий
зачем этот jsponrpc вместо rest api
Сергей Rekryt
дело в современных реактивных языках программирования типа react и vue (ангулял не будем упоминать)
Дмитрий
а как отдавать например в 1с?
Vladimir
Дмитрий
это же заточено получается на этот реактивность
Дмитрий
и ограничено просто для отдачи от сервера к серверу
Сергей Rekryt
в 1с если чтото отдавать то не проблема, отдаёшь что хочешь и завершаешь приложение
Дмитрий
то есть это для spa эти приложений, а для серверов это не удобно писать
Дмитрий
получается
Сергей Rekryt
метод можно вызывать не только через jsonRPC
Сергей Rekryt
можно и через get и post параметры
Сергей Rekryt
а ответ не обязательно будет в json если этого не хочется
Сергей Rekryt
rest api получается слишком громоздким, а оптимизация происходит за счёт того что в бекенд уходит задача вызыва мутации и действий внутри вебприложения для изменения его локального состояния
Дмитрий
Дмитрий
вы сами сказали, что это обычыный http
Дмитрий
с json
Дмитрий
в чем разница?
Сергей Rekryt
лишь в том что формат запроса в json стандартизирован
Дмитрий
так а в чем громоздким?
Дмитрий
я если честно не вкурю разницы кроме стандрата json и все
Дмитрий
которую и так можно задать
Дмитрий
при проектировании апи
Дмитрий
джумла допустим введет свой стандрат для restapi
Сергей Rekryt
можно за один запрос вызвать сразу много методов
Сергей Rekryt
и к каждому получить свой ответ тут то ошибка или успешный результат с данными
Сергей Rekryt
в SPA и т.п. реализациях пользуются axios, это xmlHttpRequest api для запросов
в нём есть т.н. интерсцептеры, механика хуков которые позволяют задать дополнительные хендлеры для обработки резульатов, в т.ч. например для выполнения действий и мутаций локального состояния
Сергей Rekryt
и нам теперь не надо в веб приложении писать запрос и дальше писать .then(result=>{ кудато кладём result})
Дмитрий
мутаций я не понимаб значения этого слова, расшифровать такое надо
Дмитрий
Сергей Rekryt
смотри есть локальное состояние приложения, это просто все данные что мы храним в памяти
Сергей Rekryt
мутации это методы что меняют эти данные синхронно т.е. сразу
Дмитрий
в приложении вы можете один метод обертку создать для этого и все
Дмитрий
чтобы написать побольше один раз
Сергей Rekryt
а дейтсвия это методы что меняют их но не факт что сразу
Сергей Rekryt
да можно создать метод который будет принимать сразу много вызывов, но тут это сразу заложено просто
а если сделать метод обёртку то надо забориться о контроле исключений
Сергей Rekryt
чтобы если задача свалится следующие задачи выполнялись, и придётся ещё костылить ответ, чтобы он тоже составной для каждой задачи был
Сергей Rekryt
а тут это стандарт (json Remote Procedure Call)
Дмитрий
ну ок
Дмитрий
я понял, но думаю, это лишнее, то что не нужно
Дмитрий
я вообще к СПА отношусь так себе
Дмитрий
с ним много проблем
Дмитрий
я пишу если надо псевдоСПА
Сергей Rekryt
зря, это будущее, проблем вроде не должно быть
Дмитрий
без фреймвроков, чтобы не затачиваться на них
Дмитрий
Сергей Rekryt
ну это настоящее уже
Дмитрий
в браузераз и так дохрена проблем с этим СПА
Vladimir
и какие рекомендации
Vladimir
и что сейчас на западе народ говорит
Vladimir
а рекомендации следующие - отказываться от монстров на js
Vladimir
как можно меньше грузить клиента
Vladimir
запускаем lighspeed от гугла и читаем
Vladimir
все описано
Сергей Rekryt
да, по этому используется регидрация локального состояния в server side rendering-е, которая ускоряет работу страницы на стороне клиента
Vladimir
при том конечно существуют всякие вк и фейсбук
Vladimir
Vladimir
как например видел я справочник по жд станциям сделанный на спа
Vladimir
нафига?
Vladimir
а потому что
Vladimir
по итогу он тормозил больше чем обычный
Vladimir
скорость ответа сервера - секунда
Vladimir
кое где вполне возможен spa
Vladimir
но это действительно редкость
Vladimir
но то мое личное мнение
Vladimir
не хочу уходить в спор
Дмитрий
вот https://www.lamoda.ru/ , нихреновый магазин вроде и бюджеты большие, что-то я не вижу, чтобы они полсноттьсю на спа сели
Сергей Rekryt
ну spa spa рознь) это слишком от много зависит
то что для большинства сайтов не нужен это сложный вопрос, для большинства сайтов контентных и простых может быть, а для личных кабинетов и систем автоматизации бизнеса вполне
Дмитрий
у них частично там сделано на react