Bonjour,
J'ai un probleme d'erreure 405 qui me dis que la methode "DELETE" doit etre utilisée a la place de "GET" pourtant j'ai bien utilisée la méthode "DELETE"
J'ai suivi la création du site d'agence immobilière et je tombe sur cette erreure.
--------------------Voici mon code--------------------
Mon controller:
<?php
namespace App\Controller\Admin;
use App\Entity\Picture;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/admin/picture")
*/
class AdminPictureController extends AbstractController{
/**
* @Route("/delete-picture/{id}", name="admin.picture.delete", methods="DELETE")
* @param Picture $picture
* @param Request $request
* @return JsonResponse
*/
public function delete(Picture $picture, Request $request) {
$data = json_decode($request->getContent(), true);
if ($this->isCsrfTokenValid('delete' . $picture->getId(), $data['_token'])) {
$em = $this->getDoctrine()->getManager();
$em->remove($picture);
$em->flush();
return new JsonResponse(['success' => 1]);
}
return new JsonResponse(['error' => 'Token invalide'], 400);
}
}
Mon app.js:
document.querySelectorAll('[data-delete]').forEach(a => {
a.addEventListener('click', e => {
e.preventDefault()
fetch(a.getAttribute('href'), {
method: 'DELETE',
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/json'
},
body: JSON.stringify({'_token': a.dataset.token})
}).then(response => response.json())
.then(data => {
if (data.success) {
a.parentNode.parentNode.removeChild(a.parentNode)
} else {
alert(data.error)
}
})
.catch(e => alert(e))
})
})
Aidez-moi svp j'arrive pas à faire disparaitre cette erreure pourtant j'ai bien recopié le code(normalement)
Merci a vous