Пример загрузки файла ringojs
У кого-нибудь есть пример загрузки файла на сервер с помощью ringojs?
1 ответ
В демонстрационном приложении есть простой пример загрузки, но он хранит загрузки в памяти, что не является хорошей идеей для большинства приложений. Чтобы сохранить закачки во временный файл, вам нужно сделать что-то вроде этого (это модифицированная версия демонстрационного действия закачки):
var fu = require("ringo/webapp/fileupload");
function upload(req) {
if (fu.isFileUpload(req.contentType)) {
var params = {};
fu.parseFileUpload(req, params, req.charset, fu.TempFileFactory);
return {
status: 200,
headers: {"Content-Type": "text/plain"},
body: [params.file.name, " saved to ", params.file.tempfile]
};
}
return Response.skin(module.resolve('skins/upload.txt'), {
title: "File Upload"
});
}
К сожалению, была ошибка с сохранением загрузок во временные файлы, которую я только что исправил, поэтому вам придется использовать текущий снимок git или файл патча modules/ringo/webapp/fileupload.js
вручную:
http://github.com/ringo/ringojs/commit/1793a815a9ca3ffde4aa5a07c656456969b504f9
Нам также нужен высокоуровневый способ сделать это для следующего релиза (например, установить req.uploadTempDir
имущество). Я открою вопрос для этого.