Frage

Hier ist, was ich hoffe:

Ich möchte eine AJAX -Anfrage an eine Datei senden (vorzugsweise mit JQuery) und nach dem Laden der Datei die Größe der angeforderten Datei bestimmen.

Nach ein wenig googeln ist klar, dass ich nicht einmal eine gute Vorstellung von der richtigen Frage habe, um dies herauszufinden. Jede Hilfe wäre sehr geschätzt.

War es hilfreich?

Lösung

Sie könnten einen HTTP machen KOPF Fordern Sie an und erhalten Sie eine annähernde Dateigröße, indem Sie das lesen Inhaltslänge HTTP -Header.

Diese Art von Anfrage wird verwendet, um eine Meta-Information über die von der Anfrage implizierte URL zu erhalten, ohne einen Inhalt davon in der Antwort zu übertragen.

var xhr = $.ajax({
  type: "HEAD",
  url: "path/to/file.ext",
  success: function(msg){
    alert(xhr.getResponseHeader('Content-Length') + ' bytes');
  }
});

Andere Tipps

Sie können einen serverseitigen Befehl erstellen, der den Pfad und den Namen der Datei nimmt, die Datei öffnet, um die Länge zu erhalten, und die Größe an den Client zurücksendet. Wie Sie es tun, hängt davon ab, welche serverseitige Sprache Sie verwenden. Ist das die Art von Aktion, die Sie suchen?

var XHRObj = $.ajax({
    type:'HEAD',
    url:'/',
    success:function(data) {
        console.log( XHRObj.getResponseHeader('Content-Length') )
    }
})

Im Grunde nehmen Sie eine HTTP-Anforderung an und fragen Sie die Inhaltslänge, die X-Bytes zurückgibt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top