Acties beschikbaar stellen via één API-endpoint
Een API-route publiceert acties onder één URL. De client stuurt altijd POST met een JSON-body { "schema": "name", "data": { ... } }, en Total.js stuurt die door naar de actie die onder die naam is geregistreerd. Eén URL, veel bewerkingen: dat is de stijl die de functie API() van jComponent spreekt.
Het voorvoegsel van de naam bepaalt wat er met data gebeurt:
+name: de invoer van de actie is verplicht en wordt gevalideerd-name: de actie neemt geen invoer aan%name: gedeeltelijke invoer (voor patches)
NEWACTION('Math/add', {
name: 'Add two numbers',
input: '*a:Number, *b:Number',
action: function($, model) {
$.callback({ sum: model.a + model.b });
}
});
NEWACTION('Math/time', {
name: 'Server time',
action: function($) {
$.callback({ year: new Date().getFullYear() });
}
});exports.install = function() {
ROUTE('API /api/ +math_add --> Math/add');
ROUTE('API /api/ -math_time --> Math/time');
};