有没有办法从Python脚本使用POST发送文件?
我有一个具有文件上传功能的表单,如果用户尝试上传的文件太大,我希望能够有一些不错的客户端错误报告,有没有办法用jQuery检查文件大小,要么纯粹在客户端或以某种方式将文件发回服务器进行检查?
在更改上传允许的最大文件大小时,我偶然发现了这两个设置.
在sytem.web中,您拥有带有maxRequestLength的http运行时节点.在system.webServer中,您拥有带有maxAllowedContentLength的requestLimits.
现在哪个优先于另一个?我们需要设置两个或者是最后一个(IIS7的那个)足够吗?
有HTMLHelper
文件上传吗?具体来说,我正在寻找替代
<input type="file"/>
Run Code Online (Sandbox Code Playgroud)
使用ASP.NET MVC HTMLHelper.
或者,如果我使用
using (Html.BeginForm())
Run Code Online (Sandbox Code Playgroud)
什么是文件上传的HTML控件?
我实际上有一个文件输入,我想检索该文件的Base64数据.
我试过了:
$('input#myInput')[0].files[0]
Run Code Online (Sandbox Code Playgroud)
检索数据.但它只提供名称,长度,内容类型,但不提供数据本身.
我实际上需要这些数据将它们发送到Amazon S3
我已经测试了API,当我通过带有编码类型"multipart/form-data"的html表单发送数据时,它可以工作.
我使用这个插件:http://jasny.github.com/bootstrap/javascript.html#fileupload
这个插件让我预览了图片,并在图像预览的src属性中检索数据.但是,当我将这些数据发送到S3时,它不起作用.我可能需要像"multipart/form-data"那样对数据进行编码,但我不知道为什么.
有没有办法在不使用html表单的情况下检索这些数据?
我在这里读到,无论如何都不应该将文件保存在服务器中,因为它不是可移植的,事务性的并且需要外部参数.但是,鉴于我需要一个针对tomcat(7)的tmp解决方案,并且我对服务器机器有(相对)控制,我想知道:
保存文件的最佳位置是什么?我应该保存/WEB-INF/uploads
(建议不要在这里)或某个地方$CATALINA_BASE
(见这里)或......?JavaEE 6教程从用户获取路径(:wtf :).注意:该文件不应以任何方式下载.
我应该建立一个配置参数详见这里?我很欣赏一些代码(我宁愿给它一个相对路径 - 所以它至少是Tomcat可移植的) - Part.write()
看起来很有希望 - 但显然需要一个绝对的路径
我对这种方法与数据库/ JCR存储库的缺点的阐述感兴趣
不幸的是 ,@ BalusC 的FileServlet专注于下载文件,而他在上传文件时的答案会跳过保存文件的位置.
容易转换为使用DB或JCR实现(如长耳兔)的解决方案将是优选的.
使用HTML,如何限制可以上传哪种文件类型?
为了方便用户体验,我想将文件上传限制为仅图像(jpeg,gif,png).
<form method="post" action="..." enctype="multipart/form-data">
<label for="image">Photo</label>
<input name="image" type="file" />
</form>
Run Code Online (Sandbox Code Playgroud) 我正在运行nginx/ruby-on-rails,我有一个简单的多部分表单来上传文件.一切正常,直到我决定限制我想要上传的文件的最大大小.为此,我将nginx设置client_max_body_size
为1m(1MB)并期望在该规则中断时响应HTTP 413(Request Entity Too Large)状态.
问题是,当我上传一个1.2 MB的文件,而不是显示HTTP 413错误页面时,浏览器会挂起一点,然后在"页面加载时重置连接"消息时死掉.
我已经尝试过nginx提供的每一个选项,似乎没什么用.有没有人对此有任何想法?
这是我的nginx.conf:
worker_processes 1;
timer_resolution 1000ms;
events {
worker_connections 1024;
}
http {
passenger_root /the_passenger_root;
passenger_ruby /the_ruby;
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name www.x.com;
client_max_body_size 1M;
passenger_use_global_queue on;
root /the_root;
passenger_enabled on;
error_page 404 /404.html;
error_page 413 /413.html;
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
**Edit**
环境/ UA:Windows XP/Firefox 3.6.13
我想上传多个文件并将它们存储在一个文件夹中并获取路径并将其存储在数据库中......你寻找多个文件上传的好例子......
注意:文件可以是任何类型的......
file-upload ×10
upload ×3
javascript ×2
jquery ×2
asp.net ×1
asp.net-mvc ×1
base64 ×1
file ×1
html ×1
html-helper ×1
html-input ×1
http ×1
http-post ×1
image ×1
nginx ×1
php ×1
post ×1
python ×1
razor ×1
servlet-3.0 ×1
servlets ×1
tomcat ×1
web-config ×1