Pregunta

Estoy tratando de hacer una petición de supresión usando ajax jquery método de la siguiente manera

$.ajax(
{
  type: 'DELETE',
  url: '/tagz',
  data: {id: taskId},
  success: function(data)
  {
    console.log(data);
  }
});

Y cuando veo la consola en cromo, que encuentro en las cabeceras de petición que una petición GET se hace en lugar de BORRAR. y en Firefox consuelo veo lo siguiente.

23:50:52:658: Network: DELETE http://test.goje87.com/tagz [HTTP/1.1 301 Moved Permanently 947ms]
23:50:53:614: Network: GET http://test.goje87.com/tagz/ [HTTP/1.1 200 OK 400ms]

En el lado servidor que estoy simplemente mantener el código siguiente.

$reqMethod = $_SERVER['REQUEST_METHOD'];

switch($reqMethod)
{
  case 'GET':
    Utils::printR('Will provide the resource.');
    selectObjects();
    break;
  case 'POST':
    Utils::printR('Will create a new record.');
    createObject();
    break;
  case 'PUT':
    Utils::printR('Will update the record.');
    break;
  case 'DELETE':
    Utils::printR('Will delete the record.');
    Utils::output($_SERVER);
    break;
}

No veo la solicitud de entrar en el case 'DELETE'. Se está haciendo en el case 'GET' lugar.

A continuación se presenta el archivo .htaccess que estoy usando en el servidor con el propósito de URLs limpias.

RewriteEngine on
RewriteRule ^(.*)$ index.php [L,QSA]

Por favor me ayude en la toma de las solicitudes eliminar. Gracias!

¿Fue útil?

Solución

lo tengo. :)

El problema era con la url ( '/tagz') que yo estaba pasando en $.ajax. Cuando cambié a /tagz/ (añadido otra barra inclinada al final) que empezó trabajando bien en Chrome y Firefox.

Gracias chicos.

Otros consejos

El método Delete es, obviamente, no es compatible con el navegador Chrome.

Parece que el servidor web no permite el método Delete. ¿Por qué no sólo tiene que utilizar el método POST para todas sus peticiones y de alimentación en lugar de una variable de "acción" que contendrá la acción a realizar?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top