GET
$.get(..)
POST
$.post()..
Как насчет PUT/DELETE
?
GET
$.get(..)
POST
$.post()..
Как насчет PUT/DELETE
?
Вы можете использовать метод ajax:
$.ajax({
url: '/script.cgi',
type: 'DELETE',
success: function(result) {
// Do something with the result
}
});
$.ajax
будет работать.
$.ajax({
url: 'script.php',
type: 'PUT',
success: function(response) {
//...
}
});
Мы можем расширить jQuery для создания ярлыков для PUT и DELETE:
jQuery.each( [ "put", "delete" ], function( i, method ) {
jQuery[ method ] = function( url, data, callback, type ) {
if ( jQuery.isFunction( data ) ) {
type = type || callback;
callback = data;
data = undefined;
}
return jQuery.ajax({
url: url,
type: method,
dataType: type,
data: data,
success: callback
});
};
});
и теперь вы можете использовать:
$.put('http://stackoverflow.com/posts/22786755/edit', {text:'new text'}, function(result){
console.log(result);
})
скопируйте здесь
Кажется, возможно с функция jQuery ajax, указав
type: "put"
или
type: "delete"
и не поддерживается всеми браузерами, но большинство из них.
Проверьте этот вопрос для получения дополнительной информации о совместимости:
Доступны ли методы PUT, DELETE, HEAD и т.д. в большинстве веб-браузеров?
Из здесь вы можете сделать это:
/* Extend jQuery with functions for PUT and DELETE requests. */
function _ajax_request(url, data, callback, type, method) {
if (jQuery.isFunction(data)) {
callback = data;
data = {};
}
return jQuery.ajax({
type: method,
url: url,
data: data,
success: callback,
dataType: type
});
}
jQuery.extend({
put: function(url, data, callback, type) {
return _ajax_request(url, data, callback, type, 'PUT');
},
delete_: function(url, data, callback, type) {
return _ajax_request(url, data, callback, type, 'DELETE');
}
});
В основном это просто копия $.post()
с адаптированным параметром метода.
Вот обновленный вызов ajax, когда вы используете JSON с jQuery> 1.9:
$.ajax({
url: '/v1/object/3.json',
method: 'DELETE',
contentType: 'application/json',
success: function(result) {
// handle success
},
error: function(request,msg,error) {
// handle failure
}
});
Вы можете использовать jQuery.ajax
:
Загрузите удаленную страницу с помощью HTTP запрос.
И вы можете указать, какой метод следует использовать, с опцией type
:
Тип запроса ( "
POST
" или "GET
" ), по умолчанию "GET
".
Примечание: Другое Методы HTTP-запроса, такие какPUT
иDELETE
, можно также использовать здесь, но они не поддерживаются всеми браузеры.
найдите параметр
Здесь также могут использоваться другие методы запроса HTTP, такие как PUT и DELETE, но они не поддерживаются всеми браузерами.
Для краткости:
$.delete = function(url, data, callback, type){
if ( $.isFunction(data) ){
type = type || callback,
callback = data,
data = {}
}
return $.ajax({
url: url,
type: 'DELETE',
success: callback,
data: data,
contentType: type
});
}
Вы можете сделать это с помощью AJAX!
Для метода PUT
:
$.ajax({
url: 'path.php',
type: 'PUT',
success: function(data) {
//play with data
}
});
Для метода DELETE
:
$.ajax({
url: 'path.php',
type: 'DELETE',
success: function(data) {
//play with data
}
});
Вы можете включить в свой хэш данных ключ с именем: _method со значением "delete".
Например:
data = { id: 1, _method: 'delete' };
url = '/products'
request = $.post(url, data);
request.done(function(res){
alert('Yupi Yei. Your product has been deleted')
});
Это также относится к
Я написал плагин jQuery, который включает в себя решения, обсуждаемые здесь, с поддержкой кросс-браузера:
https://github.com/adjohnson916/jquery-methodOverride
Проверьте это!
Вот простая однострочная строка, которую я использую, чтобы поместить более одной переменной:
$.put("https://your-url.com",{item1:'new item1',item2:'new items2'});
Если вам нужно, чтобы $.post
работал с Laravel Route::delete
или Route::put
просто добавьте аргумент "_method"="delete"
или "_method"="put"
.
$.post("your/uri/here", {"arg1":"value1",...,"_method":"delete"}, function(data){}); ...
Должен работать для других
Примечание: протестировано с Laravel 5.6 и jQuery 3
1) GET: - используется, когда клиент запрашивает ресурс на веб-сервере.
2) HEAD: - Используется, когда клиент запрашивает некоторую информацию о ресурсе, но не запрашивает сам ресурс.
3) POST: - Используется, когда клиент отправляет информацию или данные на сервер - например, заполняя онлайн-форму (т.е. отправляет большой объем сложных данных на веб-сервер).
4) PUT: - используется, когда клиент отправляет заменяющий документ или загружает новый документ на веб-сервер по URL-адресу запроса.
5) DELETE: - используется, когда клиент пытается удалить документ с веб-сервера, идентифицируемый по URL-адресу запроса.
6) TRACE: - Используется, когда клиент запрашивает доступные прокси или промежуточные серверы, меняющие запрос, чтобы объявить себя.
7) ОПЦИИ: - Используется, когда клиент хочет определить другие доступные методы для извлечения или обработки документа на веб-сервере.
8) CONNECT: - Используется, когда клиент хочет установить прозрачное соединение с удаленным хостом, обычно для облегчения связи с шифрованием SSL (HTTPS) через HTTP-прокси.