Svantaggi su CMS interamente basato su Ajax

1

Cercherò di mantenere questa domanda il più specifica possibile ...

Sto per iniziare a costruire un'API per un progetto imminente. Attualmente sto pensando a PHP / Symfony2. Sarà una API basata su HTTP molto semplice per CRUD sui modelli del sito (e le relazioni tra di loro).

Ci sarà anche bisogno di essere un CMS per gli utenti. Tradizionalmente, quando costruisco un CMS (se è su misura) utilizzerei solo un approccio basato su MVC standard, ma per questo particolare progetto penso che potrei costruirlo usando le chiamate Ajax all'API che già esistono.

La mia domanda è essenzialmente quella di decidere quale strada seguire, ma per mantenerla specifica vorrei sapere quali potrebbero essere gli svantaggi.

A favore di ciò, dovrebbe ridurre la duplicazione della logica del controller, perché /api/model/save/ e /cms/model/save fanno cose molto simili?

Attualmente gli unici due inconvenienti che posso pensare sono:

  • Potrebbe essere difficile supportare una vasta gamma di browser. Per questo particolare scenario, questo non dovrebbe essere un problema - ma chissà cosa potrebbe accadere in futuro?

  • Alcune parti del sito richiedono la tradizionale logica PHP o un'estensione dell'API (per qualsiasi parte non inclusa nell'API principale stessa), ad esempio per gestire l'autenticazione dell'amministratore.

C'è qualcosa che ho perso, un motivo schiacciante per non seguire questo approccio?

    
posta Adam 05.05.2012 - 01:09
fonte

2 risposte

1

Non conosco le particolarità del progetto, ma penso che il tuo problema principale sia questo:

Ti fidi del tuo utente con tutto?
Se usi AJAX, l'utente può modificarlo e chiamare la tua API in un modo indesiderato. Il che, a sua volta, significa che devi progettare la tua API in modo che sia sicura. Questo sicuramente ti rallenterebbe.

Ti consiglierei di non farlo, a meno che non si tratti di un esempio di ricerca: ci sono troppe cose da perdere e troppi modi per rovinarlo.

    
risposta data 10.05.2012 - 11:08
fonte
1

L'altro problema che potresti incontrare è il mantenimento dello stato (hai menzionato l'autenticazione) ma con l'aumentare del tuo sistema, potresti dover ricorrere pesantemente ai cookie per sapere cosa è successo, mantenere gli ID utente tra richieste ecc.

Non cercherò di scoraggiarti da questo approccio, ma assicurati di tenerlo a mente mentre fai la tua pianificazione in quanto potrebbe perdere il controllo se non hai un piano per farlo.

    
risposta data 05.05.2012 - 01:55
fonte

Leggi altre domande sui tag