ForgeTotal.js 5
de

Total.js 5

Datei-Uploads empfangen

Total.js 5 · total5@0.0.19 routinguploadfiles Mit Total.js 5 ausgeführt

Markiere die Route mit @upload, damit sie nur multipart/form-data akzeptiert, und setze ein Größenlimit, das zu den erwarteten Dateien passt (hier <5mb). Die hochgeladenen Dateien liegen in $.files; die übrigen Formularfelder in $.body. Jede Datei hat name, filename, size und type sowie Methoden wie read(), copy() und move().

controllers/upload.js
exports.install = function() {
	ROUTE('POST /upload/ @upload <5mb', upload);
};

function upload($) {

	var file = $.files[0];

	if (!file) {
		$.invalid('No file');
		return;
	}

	file.read(function(err, buffer) {
		$.json({
			filename: file.filename,
			size: file.size,
			type: file.type,
			text: buffer.toString('utf8'),
			title: $.body.title
		});
	});
}