Ich habe hier leider nochmal ein Problem.
Route habe ich generiert und diese funktioniert. Kann ich auch aufrufen.
Nun kann ich meine Ajax-Requests auch über "GET" senden und erhalte eine entsprechende Antwort.
Wenn ich aber versuche sie über "POST" zu senden, erhalte ich einen 500er Fehler.
Woran könnte das liegen? (Alles nach dem die() kann ignoriert werden)
Controller sieht folgendermaßen aus:
BackendAjaxController.php
Code:
**
* Handles back end routes.
*
*/
class BackendController extends AbstractController
{
public function AjaxRequest()
{
var_dump($_POST);
die();
$container = \System::getContainer();
$twig = $container->get('twig');
return new Response($twig->render(
'my_backend_route.html.twig',
[]
));
}
}
Mein Ajax-Call kommt aus einem Callback der tl_files:
Code:
return
'
<script>
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4) {
//document.getElementById("demo").innerHTML = this.responseText;
console.log(this.response, this.status);
}
};
xhttp.open("POST", "/contao/custom-routing/ajax-request", true);
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.send();
}
loadDoc();
//console.log(loadDoc());
</script>
';
Lesezeichen