Я пытаюсь загрузить фотографии с valums 'на сервер ruby apache & nginx + passenger, rails 3 ruby 1.9 (1.8 на dev) Обычно файл размером более 3 МБ завершается ошибкой со следующей трассировкой:
#
Запущено POST "/settings/uploadpict?qqfile=venise.JPG&user_id=680251975" для 82.245.125.231 в пятницу, 5 апреля 23:30:30 +0200 2011
TypeError (ожидаемый хэш (получил String) для параметра `'):
Предоставлено /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.5/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb в пределах rescues/ layout (17.2ms)
#
Я убедился, что это не apache или nginx, обрезающий поток (nginx сделал это, и я поднял до максимума запроса)
Что удивительно, так это то, что мой контроллер даже не вызывается (он начинается с logger.console, который не печатает ...), поэтому я немного беспомощен, чтобы отследить проблему ...
Любая подсказка?
просмотр кода (контроллер никогда не вызывается ...)
//Valum's Ajax File Upload //
function setup_file_upload(){
var uploader = new qq.FileUploader({
// pass the dom node (ex. $(selector)[0] for jQuery users)
element: $("#settings_upload_btn")[0],
// path to server-side upload script
action: '/settings/uploadpict',
// additional data to send, name-value pairs
params: {
user_id: <%=@user.fb_id%>
},
// validation
// ex. ['jpg', 'jpeg', 'png', 'gif'] or []
allowedExtensions: ['jpg', 'jpeg', 'png', 'gif', 'gif', 'bmp'],
// each file size limit in bytes
// this option isn't supported in all browsers
//sizeLimit: 0, // max size
//minSizeLimit: 0, // min size
// set to true to output server response to console
debug: false,
// events
// you can return false to abort submit
onSubmit: function(id, fileName){
//clean-up the mess....
$(".qq-upload-list").empty();
},
onProgress: function(id, fileName, loaded, total){},
onComplete: function(id, fileName, responseJSON){
if (responseJSON["success"] == "false" || responseJSON["success"] == undefined) {
$(".qq-upload-failed-text").show();
}else{
//do the dance
uploadDone(responseJSON["filename"]);
}
},
onCancel: function(id, fileName){},
messages: {
// error messages, see qq.FileUploaderBasic for content
},
showMessage: function(message){ alert(message); }
});
}