Laravel controllers + api

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Robert Wazzaa

Robert Wazzaa

05/01/2015 14:31:14
Quote Anchor link
Ik heb een informatieve vraag.
Momenteel ben ik in laravel een systeem aan het ontwikkelen, een ander systeem gaat hier middels een REST API mee communiceren.

Nu is het in Laravel prima mogelijk om een REST API te maken, alleen twijfel ik tussen twee methodes.

Als voorbeeld nemen we dit:
Een klant wil via de API een factuur aanmaken.

Het Laravel systeem heeft al de controllers en models hiervoor.

Nu twijfel ik over het volgende:
Ga ik voor de API de controller functies waarom de models aangeroepen worden nog een keer schrijven, ze wijken natuurlijk iets af van een normale 'form post'. Of maak ik in de model een eigen functie aan waarin de factuur aangemaakt word zodat ik minimaal dubbele source creëer?
 
PHP hulp

PHP hulp

14/05/2021 02:54:30
 
TJVB tvb

TJVB tvb

05/01/2015 17:22:30
Quote Anchor link
Als je de afhandeling helemaal gelijk hebt zou je er voor kunnen kiezen om je midleware te laten regelen of er een view of json als response moet komen.
Maar mijn voorkeur zou gaan naar een eigen controller, vooral omdat je daarbij de opties van je api en je website los van elkaar kunt houden. Hiermee kun je makkelijker wijzigingen doorvoeren en beschikbaar maken voor je api gebruikers.
 
Robert Wazzaa

Robert Wazzaa

05/01/2015 18:56:58
Quote Anchor link
Het nadeel van een Eigen controller is als er bijvoorbeeld in 1 van de 2 een bug zit, moet je het altijd 2 keer oplossen.. dat is een beetje waar ik tegen aan loop.
 
TJVB tvb

TJVB tvb

06/01/2015 11:49:44
Quote Anchor link
Je zou er voor kunnen kiezen om een basis controller te maken die je extend voor je endpoint (website of api)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.