Opzioni di trasporto di azione e pubblicazione TMS esplicita
In total5@0.0.19: NEWACTION() memorizza i metadati di azione di csrf, encrypt e compress, ma non stabiliscono le garanzie HTTP che i loro nomi potrebbero suggerire sulle rotte HTTp:
csrf:trueda solo accetta un POST senza token. Usa un middleware che chiamaDEF.onCSRFcheck()consecret_csrfconfigurato, come in csrf-protection.encrypt:truesu una rotta dichiarata aggiunge i metadati di@encrypt, ma questa versione accetta ancora il testo JSON e ritorna il testo jSON.compress:falsenon disabilita la compressione di risposta ordinaria HTTP; la compressa di risposta segue$httpcompress, il codice accettato del cliente e la dimensione della risposta. una grande risposta JSON può essere gzipped anche quando questa opzione di azione è falsa.publishdichiara un argomento / schema TMS. completare una azione non pubblica automaticamente il suo risultato. chiama$.publish(value)esplicitamente e costruisci deliberatamente la carica pubblica. Selezionare i campi per pubblicare prima di chiamare$.publish(value).
Configurare il token TMS per la tua applicazione. messaggi TMS vanno ai abbonati di questo argomento; le autorizzazioni e le regole di prenotazione rimangono nel tuo codice.
secret_csrf : local-csrf-fixture-only
$tms : true
secret_tms : local-tms-fixture-only
$httpcompress : trueNEWACTION('Transport|csrf', {
csrf: true,
input: '*value:String',
action: function($, model) { $.callback(model); }
});
NEWACTION('Transport|encrypted', {
encrypt: true,
route: 'POST /encrypted/',
input: '*value:String',
action: function($, model) { $.callback(model); }
});
NEWACTION('Transport|compressed', {
compress: false,
action: function($) { $.callback({ text: 'abcdefghij'.repeat(400) }); }
});
NEWACTION('Transport|notice', {
publish: 'value:String',
input: '*value:String',
action: function($, model) {
$.publish({ value: model.value });
$.success();
}
});exports.install = function() {
ROUTE('POST /csrf-option/ @json --> Transport|csrf');
ROUTE('GET /compression-option/ --> Transport|compressed');
ROUTE('POST /notice/ @json --> Transport|notice');
};