Opciones de transporte de acción y publicación TMS explícita
En total5@0.0.19: NEWACTION() almacena csrf, encrypt y compress en metadatos de acción, pero no establecen las garantías HTTP que sus nombres podrían sugerir en las rutas HTTp:
csrf:truepor sí solo acepta un POST sin token. Usa un middleware que llame aDEF.onCSRFcheck()consecret_csrfconfigurado, como en csrf-protection.encrypt:trueen una ruta declarada añade metadatos de@encrypt, pero esta versión todavía acepta el texto JSON y devolve el texto jSON.compress:falseno deshabilita el gzip HTTP ordinario; la composición de respuesta sigue$httpcompress, el tamaño de codificación y respuesta aceptada por el cliente.publishdeclarar un tema/escema de TMS. El cumplimiento de una acción no publica automáticamente su resultado.$.publish(value)explicitamente y construye la carga pública deliberadamente. seleccione los campos para publicar antes de llamar$.publish(value).
Configure el token TMS para su aplicación. mensajes de TMS van a los suscriptores de ese tema; las reglas de permiso de la aplicación y la tenencia todavía pertenecen a su código.
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');
};