我正在使用JQuery File上传插件,为选项接受文件赋值我需要正则表达式,它将告诉我们要限制的文件类型是什么.我需要通过使用下面的表达式来限制我实现的exe和js
(\.|\/)(!exe|!js)$
但这是表达式不允许其他文件,然后我尝试添加一个扩展如下
(\.|\/)(!exe|!js|pdf)$
使用Above正则表达式,它只接受pdf而不接受exe和JS.现在我需要启用除exe和js之外的所有文件扩展名.将所有扩展添加到表达式将很困难.我们可以在表达式中提到一些如何接受除上面类似格式的exe和js之外的其他文件类型.这个正则表达式适用于JS.
谢谢,
维奈
我正在尝试将大文件上传1GB到2GB使用jQuery File Upload - blueimp(基于Ajax) php / yii Framework 1.15我已将这些值设置为上传更大的文件
memory_limit = 2048M
upload_max_filesize = 2048M
post_max_size = 2048M
Run Code Online (Sandbox Code Playgroud)
会话时间设置
ini_set('session.gc_maxlifetime', 7200);
Run Code Online (Sandbox Code Playgroud)
我测试的1GB文件比成功上传的文件要小
当我尝试上传大于1GB文件时,它会在50分钟上传时间后显示Forbidden错误...
服务器规格
1CPU和1GB memory,64位文件上传工作中Google Chrome和Microsoft Edge(我曾与1.15和1.88 GB文件测试)时,我上传文件Mozilla Firefox小于300MB它成功上传,但是当我尝试哟一段时间了Ajax调用后上传超过300MB的文件更大的失败,给500 Internal Server Error
标题响应位于下图中

php file-upload xmlhttprequest large-files jquery-file-upload
我面临多个文件上传的问题。
问题是:
如果我上传2 files只1文件被发送到后端。
仅最后一个文件发送到服务器(跳过其他文件,换句话说,只有1个文件发送到后端)
问题:我遇到一种情况,在每次输入时我都可以浏览多个文件并可以单击提交。我希望每个文件都应该发送到服务器。
这里:jsfiddle显示我的问题:http : //jsfiddle.net/eabangalore/jyteus6c/2/
注意:请console.log检查是否全部files发送到服务器。
下面是我的代码:
var filesUploadList = [];
function initializeMultipleFileUpload(){
fileList.forEach(function(obj){
$('input[data-id="'+obj.identifier+'"]').fileupload({
url: 'https://jsonplaceholder.typicode.com/posts',
autoUpload: false,
maxChunkSize: 10*1024*1024, // 1MB
maxRetries: 10,
dataType: 'json',
multipart: false,
sequentialUploads: true,
replaceFileInput: false,
progress: function(e,data){
console.log('Progress for file Name: ',data.data.name);
},
}).on("fileuploadadd", function (e, data) {
filesUploadList.push(data.files[0])
});
});
}
var fileList = [
{'fileNo':1,identifier:111},
{'fileNo':2,identifier:222},
{'fileNo':3,identifier:33}
];
var inputFileStr = '';
for(var i = …Run Code Online (Sandbox Code Playgroud)我正在构建一个文件上传是可选的表单.事实证明,当没有选择上传文件时,我无法发布表格.正因为如此,我必须在我的页面上创建两个表单,并且如果用户决定不添加实际数据,则执行所有脏检查以删除上载的文件.
问题是 :
即使没有选择文件,我是否可以提交表单,以便我仍然可以在服务器端接收其他表单数据?
我正在使用Blue Imp jQuery File Uploader将文件上传到MVC控制器.这适用于所有浏览器,除了Internet Explorer 8,其中data.submit()似乎没有被触发.我已经为'data'添加了一个监视器,我可以在那里看到该文件,但是表单根本没有被提交.下面是我的插件代码的精简版:
$('#fileupload').fileupload({
dataType: 'json',
url: "Upload/Index",
limitConcurrentUploads: 1,
sequentialUploads: true,
add: function (e, data) {
var filename = data.files[0].name;
data.context = $('<div class="progress-container"></div>').text(filename).appendTo ($('#filelistholder'));
// Add a progress bar for the file
$('<div class=\"margin-b-10 progress-halved\"><div class="bar"></div></div>').appendTo(data.context);
// Add a new click event for the Upload All button and enable it
$('#btnUploadAll').removeAttr('disabled').click(function () {
// Submit the file and remove the click event
data.submit();
$('#btnUploadAll').off('click');
});
// Show how many files have been selected
$('#overallProgressText').text($('.progress-container').size() …Run Code Online (Sandbox Code Playgroud) jquery submit internet-explorer-8 blueimp jquery-file-upload
我正在使用Rails 4上的jquery-file-upload,我是从https://github.com/tors/jquery-fileupload-rails-paperclip-example开始的.所以我使用的是jquery-rails,jquery-fileupload-rails和paperclip gems.
由于我不是jquery或javascript的破解,我正在尝试简化和理解所有内容,更改代码以使用js.erb远程调用rails.
所以,文件列表是rails部分(_videos.html_erb),上传控制器中的索引操作有一个index.js.erb来响应js.我已经$.get('/uploads');在de fileupload done事件中添加了刷新部分.
一切顺利,除非取消按钮,我不明白我要做什么,在哪里.
这是文档告诉我的:
如何取消上传
可以通过在jqXHR对象上调用abort方法来取消上载:
var jqXHR = $('#fileupload').fileupload('send', {files: filesList})
.error(function (jqXHR, textStatus, errorThrown) {
if (errorThrown === 'abort') {
alert('File Upload has been canceled');
}
});
$('button.cancel').click(function (e) {
jqXHR.abort();
});
Run Code Online (Sandbox Code Playgroud)
这是我的index.html.erb:
这里,对于进度条和文本指示,我把代码提取为file-upload-basic-plugin
<div class="container">
<h2 id="titol">Upload file</h2>
<%= form_for Upload.new, :html => { :multipart => true, :id => "fileupload" } do |f| %>
<div class="row fileupload-buttonbar">
<%= f.file_field :upload %>
<button …Run Code Online (Sandbox Code Playgroud) 正如标题所述,我需要一些帮助来实现Web API控制器以使用JQuery File Upload接受分块上传.任何帮助(包括现有文章/教程的链接)将不胜感激.
我尝试使用jquery-file-upload的基本示例(源代码),我在html中包含的文件是:
jquery.js
bootstrap.css
bootstrap.js
jquery.fileupload.css
jquery.iframe-transport.js
jquery.fileupload.js
Run Code Online (Sandbox Code Playgroud)
还有什么我应该包括正确使用jquery-file-upload?
我的应用程序不需要使用jquery-ui.如果jquery-ui真的是依赖jquery-file-upload,是否有任何解决方法使用它没有jquery-ui?
我有一个(Spring Boot 1.5)REST服务器处理文件uploads(multipart/form-data)和一个使用jQuery fileupload的JS客户端.在大多数情况下它工作正常,但是当我想上传一个更大的文件(大约4MB)时,服务器会发现它超出了限制并发回包含错误消息的响应.
然而,似乎服务器停止读取请求(当然是正确的),这导致客户端管道损坏.在这种情况下,不处理响应.该fail回调函数调用的内容如下data.jqXHR(data.response未定义):
{"readyState":0,"responseText":"","status":0,"statusText":"error"}
Run Code Online (Sandbox Code Playgroud)
使用时进行呼叫curl,结果是:
HTTP/1.1 200
Content-Type: application/json;charset=UTF-8
curl: (55) Send failure: Broken pipe
{"files":[{"size":3863407,"error":"upload_uploadSizeExceeded"}]}
Run Code Online (Sandbox Code Playgroud)
所以返回了一个响应,但JS客户端似乎忽略了它.有没有选项让jQuery处理响应,即使请求只是部分发送?
顺便说一句:更奇怪的是,我在服务器日志中看到这样的请求重复了几次,这可能是JS中的一种重试机制?
我正在使用jQuery文件上传并将maxNumberOfFiles设置为1.但是,它一次允许多个文件.文件陈述......
The maxNumberOfFiles option depends on the getNumberOfFiles option, which is defined by the UI and AngularJS implementations.
Run Code Online (Sandbox Code Playgroud)
没有关于该主题的进一步文件.getNumberOfFiles只是一个你可以传入的函数.
这是我的......
$('#fileupload').fileupload({
maxNumberOfFiles: 1,
getNumberOfFiles: function () { return 1 }
});
Run Code Online (Sandbox Code Playgroud)
有没有人有maxNumberOfFiles选项工作?
jquery ×6
blueimp ×3
javascript ×3
file-upload ×2
ajax ×1
c# ×1
jqxhr ×1
large-files ×1
node.js ×1
php ×1
regex ×1
submit ×1