Fiecare Controler cu acțiune unică este reprezentat de o clasă dedicată sau de închidere.
Acțiunea face doar aceste lucruri:
- colectează intrări din solicitarea HTTP (dacă este necesar)
- invocă Domeniu cu acele intrări (dacă este necesar) și păstrează rezultatul
- construiește un răspuns HTTP (de obicei cu rezultatele invocării domeniului).
Toate celelalte logici, inclusiv toate formele de validare a intrărilor, tratarea erorilor și așa mai departe, sunt, prin urmare, împinse din acțiune și în Domeniu (pentru problemele legate de logica domeniului) sau redarea de răspuns (pentru problemele privind logica de prezentare).
Un răspuns ar putea fi redat la HTML (de exemplu, cu Twig) pentru o cerere web standard; sau poate fi ceva de genul JSON pentru cererile API RESTful.
Notă: Închiderile (funcțiile) ca handler de rutare sunt destul de „scumpe”, deoarece PHP trebuie să creeze toate închiderile la fiecare cerere. Utilizarea denumirilor claselor este mai ușoară, mai rapidă și se adaptează mai bine pentru aplicații mai mari.
Redarea unui șablon Twig
Scrierea JSON la răspuns
În loc să apelați de fiecare dată json_encode, puteți utiliza metoda de răspuns json () pentru a reda răspunsul.
Răspuns
Conform ADR ar trebui să existe un răspuns pentru fiecare acțiune. În majoritatea cazurilor, un răspuns generic (a se vedea Responder.php) este suficient de bun. Desigur, puteți adăuga clase speciale de răspuns și puteți muta logica completă de prezentare acolo. O clasă de răspuns suplimentară ar avea sens atunci când se construiește un strat de transformare pentru ieșirea de date complexă (json sau xml). Acest lucru ajută la separarea logicii de prezentare de logica domeniului.
Cerere și răspuns
O prezentare rapidă a ciclului de solicitare/răspuns:
Solicitările trec prin stiva middleware (în și în afara):
Solicitare> Controler frontal> Rutare> Middleware> Acțiune> Middleware> Răspuns
Iată un flux de solicitări HTTP complet detaliat și înapoi la răspuns:
- 9781741811957 Mersul pentru pierderea în greutate Modul ușor de a slăbi și de a tonifica! AbeBooks - Lucy Knight
- Curea de slăbire reglabilă cu talie subțire de la 30 la 50
- Antrenament de 3 minute înainte de somn pentru a-ți slăbi picioarele; Clasarea ideilor
- Antrenament de 3 minute înainte de somn pentru a-ți slăbi picioarele - Finix Fitness
- 10 exerciții pentru a vă ajuta să slăbiți după sarcini mamele