【问题标题】:How to upload a file using an HTTP "PUT" using JQuery?如何使用 JQuery 使用 HTTP“PUT”上传文件?
【发布时间】:2023-03-24 19:17:01
【问题描述】:

我想使用 JQuery-File-Upload 上传文件,但使用 HTTP“PUT”而不是 multipart-forms。 According to their site

- Multipart and file contents stream uploads:
    Files can be uploaded as standard "multipart/form-data" or file contents stream (HTTP PUT file upload).

但我在他们的文档中找不到任何关于如何执行此操作的信息。有人可以帮忙吗?

【问题讨论】:

标签: javascript jquery put


【解决方案1】:

根据:https://github.com/blueimp/jQuery-File-Upload/wiki/Options

方法

用于HTTP请求的方法 将文件发送到服务器。可 POST (multipart/formdata 文件上传) 或 PUT(流式文件上传)。 接受字符串或函数 返回一个字符串。

你应该使用:

$('#file_upload').fileUpload({
    namespace: 'file_upload_1',
    url: '/path/to/upload/handler.json',
    method: 'PUT'
});

【讨论】:

  • 抱歉,我查看了那个页面,但仍然看不到你从哪里得到的。 :'( 抱歉,这可能是因为我几乎不懂 JavaScript。事实上,api.jquery.com/jQuery.ajax 的“类型”字段提到了 PUT 和 GET。
  • 更新了答案。您在启动文件上传组件时设置选项
  • 我之前确实看到过,只是不明白它在说什么。感谢您的澄清。
【解决方案2】:

我也喜欢 REST,但您可能希望确保在需要支持的浏览器上进行良好的单元测试。

http://api.jquery.com/jQuery.ajax/

要发出的请求类型(“POST”或“GET”),默认为“GET”。注意:这里也可以使用其他 HTTP 请求方法,例如 PUT 和 DELETE,但旧版浏览器可能不支持。

看到这个答案 How do I PUT data to Rails using JQuery

【讨论】:

  • 所有现代流行的浏览器都支持 ajax / jquery 的 PUT 和 DELETE,甚至包括 IE。所以,我认为在互联网应用中使用它是安全的。
  • 这个答案已经有将近 5 年的历史了,差不多该被编辑了。
猜你喜欢
  • 2011-11-02
  • 2019-07-27
  • 1970-01-01
  • 2011-07-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-26
  • 2010-10-10
相关资源
最近更新 更多