저는 현재 다양한 응용 프로그램에서 사용할 수있는 응용 프로그램 프레임 워크를 구축하고 있습니다. 이 프레임 워크는 PHP로 작성되었으며 RESTful API를 가지고있다. 프레임 워크에서 jQuery와 내 API를 결합하여 단일 페이지 응용 프로그램을 사용할 수있게하고 싶습니다.backbone.js가없는 SPA
backbone.js를 살펴 보았습니다. 문제는 내가 갖고있는 것과 다른 일부는 본질적으로 js에서 비즈니스 로직을 복제한다는 것입니다. 이것은 코드베이스의 크기를 효과적으로 두 배로 할뿐만 아니라 일종의 보안 위험을 나타냅니다. js에서 비즈니스 로직을 복제하면 악의적 인 사용자의 작업을 훨씬 쉽게 만들어주는 백 엔드가 어떻게 보이는지 전 세계에 알릴 수 있습니다.
그건 분명히 프론트 엔드/js 전문가는 아니지만 나는 정말 심각하게 백본을 보았다. 내 생각에 본질적으로 동일한 것을 수행하는 동적 js 함수를 정의하는 좋은 방법이 있어야합니다. 내가 찾고있는 것은 올바른 방향의 요점이며, 그것이 내가 얼마나 잘못되었는지 말해주고 있습니다.
비즈니스 논리에 관해서는 백엔드와 내가 할 수있는 모든 수업을 준비했습니다. 말하자면, backbone.js는 프론트 엔드에서 같은 클래스를 다시 정의해야합니다. 지금까지 프론트 엔드에서 수행하고 싶은 작업 인 경우 js를 통해 동적으로 제어되는 단일 페이지 응용 프로그램이 필요합니다. 이는 양식 유효성 검사보다 훨씬 복잡합니다. 단순히 잘못된 데이터를 제출하면 내 논리가 노출되지 않고 오류 만 반환합니다. –
클라이언트 모델에서 validate 함수를 통해 서비스를 다시 호출하여 서버에서 유효성 검사를 수행 할 수 있습니다. 일반적으로 validate 함수는 모델의 유효성을 검사하는 데 사용되지만 더 많이 사용할 수도 있습니다. 클라이언트 유효성 검사를 원할 경우, 유효성 검사를 수행하기 위해 서버로가는 경우에도 클라이언트에서 유효성을 검사해야합니다. 자체 프레임 워크를 롤링해도 변경되지는 않으며 프로젝트를 수행해야하는 추가 개발자에게는 복잡성이 추가됩니다. –
나는 당신이하려고하는 것이 오해했다고 생각합니다. backbone.js를 사용하지 않고 단일 페이지 응용 프로그램을 구현하는 방법을 찾으려고합니다. 이렇게하려면 js에서 백엔드 코드를 복제해야하기 때문입니다. 솔직히, 나는 당신이 이전에 언급 한 내용에 대해 당신이 무엇을 말하고 있는지조차 확신하지 못한다. –