ajax response



  • Hallo,

    ich müsse via html eine variable vom Server holen soweit alles klar,
    leider erlange ich keinen entsprechenden Response -text

    function OnTimer()
    {
    	trycnt = trycnt + 1
        urlt   = document.location + "?GetPos=" + trycnt.toString();
    
        ajax.open("HEAD", urlt,true);
      
        ajax.onreadystatechange = function ()//https://stackoverflow.com/questions/43140323/url-in-ajax-open
    	{
    		if (ajax.readyState == XMLHttpRequest.DONE )
    		{
    			alert(ajax.responseText);  //immer leer Server sendet aber auf HEAD "Hallo Welt"
                     }
    	};
    
        ajax.send();
    }
    

    Was läuft denn nun schon wieder falsch ?

    Danke für Hinweise
    Grüße
    Karsten.



  • @Achromat

    also erstens liefert ein HEAD-Request keinen http-response-body sondern eben nur die header. Was aber kein Problem ist, diese Header mit dem XMLHttpRequest-Objekt auszulesen. Die zweite Sache ist die Same Origin Policy. Da wäre also zu prüfen, ob die Zielseite einen Cross Origin Request erlaubt.

    MFG



  • Hallo Ro_Ro,

    vielen Dank für deine Antwort, am Ende gab es keine Probleme, und der eigene Server sendet
    auf die Request's dann entsprechende Daten .

    Ein Head sende ich da auch nicht mehr, dies war hier ein Versuch ohne Rücksendung auszukommen.
    Normal wird hier so gesendet:

                    var ajax1 = new XMLHttpRequest();
                    ajax1.open("POST", document.location + "?" + e.name + "=" + e.value, true);
                    ajax1.send(0);
    

    Das ganze mündete in ein Video : https://youtu.be/FxZBHJ5FWDg

    Danke für deine Hilfe !



  • @Achromat

    na das ist doch mal ne gute Nachricht 😉
    Falls Du öfter was mit Ajax machst, lohnt es sich evntl. über eine eigene Library nachzudenken. Die man in etwa so anwendet:

    function callback(){
       if( this.status != 200 ) return alert(this.response);
       else{
          // Response in DOM einbauen
       }
    }
    
    let xhr = new XHR(callback);
    xhr.post(url, content);
    

    MFG



  • @_ro_ro sagte in ajax response:

    @Achromat

    na das ist doch mal ne gute Nachricht 😉
    Falls Du öfter was mit Ajax machst, lohnt es sich evntl. über eine eigene Library nachzudenken. Die man in etwa so anwendet:

    Wieso eine eigene library erstellen wenn es schon ein haufen gibt, welche das schon machen.
    z.b. jquery

    https://www.w3schools.com/jquery/jquery_ajax_get_post.asp
    https://api.jquery.com/jQuery.post/



  • @firefly sagte in ajax response:

    @_ro_ro sagte in ajax response:

    @Achromat

    na das ist doch mal ne gute Nachricht 😉
    Falls Du öfter was mit Ajax machst, lohnt es sich evntl. über eine eigene Library nachzudenken. Die man in etwa so anwendet:

    Wieso eine eigene library erstellen wenn es schon ein haufen gibt, welche das schon machen.

    Wieso überhaupt selber programmieren!?

    MFG

    PS: jquery ja aber nicht für ajax. Viel zu umständlich.



  • Dieser Beitrag wurde gelöscht!

Anmelden zum Antworten