Heim > Web-Frontend > js-Tutorial > Hauptteil

JavaScript---Beacons Bildbeacons senden Daten

一个新手
Freigeben: 2017-09-09 10:33:24
Original
1606 Leute haben es durchsucht


Einführung

Diese Technik ist der dynamischen Skriptinjektion sehr ähnlich. Verwenden Sie JavaScript, um ein neues Bildobjekt zu erstellen und das src-Attribut auf die Skript-URL auf dem Server festzulegen. Die URL enthält die Schlüssel-Wert-Paar-Daten, die wir über GET zurückgeben möchten. Bitte beachten Sie, dass das img-Element nicht erstellt oder in das DOM eingefügt wird.

var url = '/status_tracker.php';var params = [        
'step=2',        
'time=1248027314'
    ]
    (new Image()).src = url + '?' + params.join('&');
Nach dem Login kopieren

Der Server empfängt die Daten und speichert sie Es ist nicht erforderlich, es an den Client zu senden. Der Client sendet keine Rückmeldungen, sodass tatsächlich kein Bild angezeigt wird. Dies ist die effizienteste Möglichkeit, Informationen an den Server zurückzusenden. Nebenfehler wirken sich überhaupt nicht auf den Client aus.

Image-Beacons sind einfach, aber das bedeutet auch, dass ihre Möglichkeiten eingeschränkt sind. Sie können keine POST-Daten senden und URLs haben eine maximale Länge. Daher ist die Länge der Daten, die Sie senden können, ziemlich begrenzt. Sie können vom Server zurückgegebene Daten empfangen, dies ist jedoch auf sehr wenige Arten beschränkt. Eine Möglichkeit besteht darin, das Image-Ereignis des load-Objekts abzuhören. Hier erfahren Sie, ob der Server die Daten erfolgreich empfangen hat. Sie können auch die vom Server zurückgegebene Breite und Höhe überprüfen (sofern es sich um ein Bild handelt) und diese Zahlen verwenden, um Sie über den Status des Servers zu informieren 1 bedeutet „Erfolg“, und eine Breite von 2 bedeutet „Wiederholen“.

Wenn Sie keine Daten in der Antwort zurückgeben müssen, sollten Sie einen 204-Kein-Inhalt-Statuscode ohne den Nachrichtentext senden. Dadurch wird verhindert, dass der Client weiterhin auf den Nachrichtentext wartet, der nie eintrifft.

Beispiel

var url = '/status_tracker.php';var params = [        
'step=2',        
'time=1248027314'
    ]
    
var beacon =  new Image();
beacon.src = url + '?' + params.join('&');

beacon.onload = function( ) {
    if (this.width == 1) {        //成功
    } else if (this.width == 2) {        //失败
    }
}

beacon.onerror = function() {
    //出错
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonJavaScript---Beacons Bildbeacons senden Daten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!