Я использую тонкий PHP Framework и пытается отправить FormData с помощью Jquery.ajax() следующим образом:Jquery.ajax PUT данных не разобранные на PHP
var data = new FormData();
data.append('some_name', 'some_data');
data.append('a_file', $('input[name=the_file_form_field]').get(0).files[0]));
$.ajax({
url: 'the_destination_url',
data: data,
processData: false,
contentType: false,
type: 'PUT',
dataType: 'json',
success: function(data, textStatus, jqXHR) {
//Processing result here
},
error: function(jqXHR, textStatus, errorThrown) {
//Processing result here
}
});
Однако я попытался следующие сценарии :
- работа: FormData без файла, добавляющее _method = PUT и настройка $ .ajax к типу: POST
- не работает (PHP не получает никаких данных PUT) : FormData без файла, установив $ .ajax набрать: PUT
- Не работает (метод остается POST): FormData с файлом, добавив _method = ставить и настройка $ .ajax печатать: POST
- не работает (PHP не получает никаких данных PUT): FormData с файлом, установив $ .ajax набрать: PUT
я что-нибудь не хватает?
Приложение требует, чтобы он использовал запрос PUT, и поэтому такой запрос POST не является возможным.
Пожалуйста, укажите 'не работает'. Правильно ли отвечает сервер? или ajax не получает правильный ответ? –
Сервер не получает (или анализирует) данные PUT правильно, тело запроса в консоли хром ясно показывает, что оно сгенерировано правильно, хотя – xorinzor
И как именно мы теперь можем помочь вам решить вашу проблему, если сервер получает действительный PUT -request, но, вероятно, работает неправильно? Я думаю, что каждый из нас хочет быть провидцем, но мы этого не делаем. –