В настоящее время я создаю структуру приложения, которую я могу использовать с различными приложениями. Структура написана на PHP и имеет RESTful API. Я хочу, чтобы среда включала одностраничные приложения, используя комбинацию jQuery и моего API.SPA без backbone.js
Я искал backbone.js, но проблема, с которой я столкнулся, и некоторые другие - это то, что вы по существу дублируете свою бизнес-логику в js. Это не только эффективно удваивает размер вашей кодовой базы, но и представляет угрозу безопасности. Дублируя свою бизнес-логику в js, вы показываете всему миру, как выглядит ваш back-end, что значительно облегчает работу с вредоносными пользователями.
Это говорит о том, что я, конечно, не является интерфейсом/js гуру, и я действительно серьезно смотрел на backbone.js для этого. Мое мышление заключается в том, что должен быть хороший способ определить динамические функции js, которые выполняют по существу одно и то же. То, что я ищу, - это точка в правильном направлении, даже это говорит мне, как я ошибаюсь.
Что касается объема бизнес-логики, у меня есть целый набор классов на внутреннем сервере и из того, что я могу tell, backbone.js требует, чтобы вы переопределили те же классы в интерфейсе. Что касается работы, которую я хочу сделать в интерфейсе, я хочу, чтобы одностраничное приложение динамически контролировалось через js, что намного сложнее, чем просто проверка формы. И просто отправка недопустимых данных не будет раскрывать ни одну из моих логических функций, она просто возвращает ошибки. –
Вы всегда можете выполнить проверку на сервере, обратившись к своей службе с помощью функции проверки подлинности в модели клиента. Как правило, функция проверки правильности используется для проверки модели, но ее можно использовать и в большей степени. Если вы хотите проверить клиенту, вам нужно проверить его на клиенте, даже если это означает, что нужно выполнить проверку на сервере. Роллинг вашей собственной структуры не изменит этого, это просто добавит сложности для любых дополнительных разработчиков, которые должны работать над вашим проектом. –
Я думаю, вы неправильно поняли, что я пытаюсь сделать. Я пытаюсь найти способ достижения одностраничного приложения без использования backbone.js, потому что для этого потребуется, чтобы я дублировал мой внутренний код в js. Честно говоря, я даже не уверен, о чем вы говорите в своем предыдущем комментарии. –