Как загрузить файл с помощью HTTP "PUT" с помощью JQuery?

Я хотел бы загрузить файл, используя JQuery-File-Upload, но используя HTTP "PUT" вместо multipart-forms. Согласно их сайту:

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

но я не могу найти нигде в их документации относительно того, как это сделать. Может ли кто-нибудь помочь?

Ответы

Ответ 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'
});

Ответ 2

Мне тоже нравится REST, но вы можете убедиться, что вы unit test хорошо в браузерах, которые вам нужно поддерживать.

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

Тип запроса ( "POST" или "GET" ), по умолчанию - "GET". Примечание. Другие методы запросов HTTP, такие как PUT и DELETE, также могут использоваться здесь, но они могут не поддерживаться более старыми браузерами.

См. этот ответ Как передать данные в Rails с помощью JQuery