Webentwicklung

So zeigen Sie Fehler in AJAX, Javascript – Laravel an

[ad_1]

Wenn Sie eine AJAX in Laravel aufrufen, wird ein „500 – Internal Server Error“ angezeigt, wenn in Ihrem PHP-Code ein Fehler vorliegt. Um den tatsächlichen Fehler zu sehen, folgen Sie bitte diesem Artikel.

Angenommen, ich rufe eine AJAX-Anfrage in Laravel mit Core-Javascript (kein jQuery) auf, dann sieht Ihr Code folgendermaßen aus:

Javascript AJAX

var ajax = new XMLHttpRequest();
ajax.open("POST", document.getElementById("base-url").value + "/ajax-test", true);

ajax.onreadystatechange = function () {
    if (this.readyState == 4 && this.status == 200) {
        console.log(this.responseText);
    }

    if (this.status == 500) {
        console.log(this.responseText);
    }
};

var formData = new FormData();
formData.append("_token", document.querySelector("meta[name=_token]").content);
ajax.send(formData);

Linie 1: Ich habe ein AJAX-Objekt erstellt.

Zeile 2: Ich habe die AJAX-Anforderung mit der POST-Methode und der URL geöffnet, an die die Anforderung gesendet wird. Der dritte Parameter (true, false) ist der asynchrone Boolesche Wert.

Hinweis: Alle modernen Browser empfehlen diesen Wert wahr.

Zeile 4: Ein Ereignis-Listener, der jedes Mal aufgerufen wird, wenn der Status der Anforderung geändert wird.

Zeile 5: Überprüfen Sie, ob die Anforderung erfolgreich ist und die Antwort vom Server empfangen wurde.

Zeile 6: Zeigen Sie die Antwort vom Server in der Browserkonsole an.

Zeile 9: Überprüfen Sie, ob ein interner Serverfehler vorliegt. Wenn ja, zeigen Sie diesen Fehler in an Zeile 10.

Zeile 14: Es wird ein neues Formulardatenobjekt erstellt, das die Daten mit AJAX-Anforderung sendet.

Zeile 15: Ein CSRF-Token (Cross-Side Request Forgery) wird zusammen mit dem Formulardatenobjekt angehängt. Wir werden dieses Meta-Tag später in diesem Artikel erstellen.

Hinweis: Für jede POST-Anfrage in Laravel muss ein CSRF-Token zusammen mit der Anfrage gesendet werden.

Zeile 16: Senden der AJAX-Anforderung zusammen mit Formulardatenobjektwerten.

Sie können die versteckten Basis-URL- und CSRF-Token-Tags wie folgt erstellen:

<input type="hidden" id="base-url" value="{{ url('/') }}">
<meta name="_token" content="{{ csrf_token() }}">

Unabhängig von dem Fehler, den Sie auf Ihrer Serverseite, in der Route oder im Controller haben, wird dies in Ihrem Browser-Konsolenfenster angezeigt.

jQuery AJAX

Wenn Sie mit jQuery eine AJAX-Anfrage senden und den tatsächlichen Fehler von Ihrer Serverseite nicht sehen, ändern Sie Ihre jQuery AJAX-Funktion wie folgt:

$.ajax({
    url: document.getElementById("base-url").value + "/ajax-test",
    method: "POST",
    data: formData,
    processData: false,
    contentType: false,
    success: function (response) {
        console.log(response);
    },
    error: function (xhr) {
        console.log(xhr.responseText);
    }
});



[ad_2]

Related Articles

Close
Immediate Momentumxnxx story sex meyzo.me haryana sex نيك بنت جامدة porn-arab.net احلى قصص نيك نيك ممثله ounoun.com صور مص اللسان shruti hasan porn desixxxv.net indiaxx hindi movie xxx video flyporntube.net lokl sex www.xnxx.xom russianporntrends.com local assamese sex video mide-689 freejavstreaming.net 無修正 温泉 تحميل سكس مترجم orivive.com فيس بوك سكس carla abellana shows pinoytvpage.com starstruck last batch sexy girls xxx pornia.info hindi hot sexy video download ang probinsyano june 24 2022 full episode advance teleseryeone.com apoy sa langit june 9 2022 artikulo 247 may 19 eteleserye.com umiiwas in english sexa xxx blowjobporntrends.com tamil sex full video tamil padam sex padam tubedessert.mobi www videos9 com india ka sexy video teenporntrends.com pornohut.su