2016-07-01 28 views
2

Ich mache eine http GET-Anfrage an eine URL, die eine XML-Datei hat, und ich brauche den Antwort-Header 'Content-Lenght'? Gibt es eine Möglichkeit, es zu bekommen? Ich muss die Größe der Datei validieren, bevor sie heruntergeladen werden konnte.angularjs - wie kann ich die Inhaltslänge Header

Hier ist mein Code

$http({ 
    method : "GET", 
    url : "http://url/file.xml" 
    }).then(function mySucces(data) { 

    console.log(response); 
    $scope.content = response.data; 

    }, function myError(error) { 

    console.log(error); 
    $scope.content = error.statusText; 
    }); 

Antwort

1

Von Angular Docs, https://docs.angularjs.org/api/ng/service/ $ http

Antwort Rückruf erhält

  • Daten - {string | Objekt} - Die Antwort Körper transformiert mit die Transformationsfunktionen.

  • Status - {Nummer} - HTTP-Statuscode der Antwort.

  • headers - {funktion ([headerName])} - Header-Getter-Funktion.

  • config - {Objekt} - Das Konfigurationsobjekt, das zum Generieren der Anforderung verwendet wurde.

  • statusText - {string} - HTTP-Statustext der Antwort.

Sie Response-Header durch den Aufruf headers Funktion mit Kopf Namen bekommen können, in diesem Fall headers('Content-Type')

$http({ 
    method: "GET", 
    url: "http://b31fe90a.ngrok.io/xml/XML-Meli.xml" 
}).then(function mySucces(response) { 

    console.log(response); 
    console.log(response.headers('content-type'); // it can be `Content-Type` not sure. but can be any header key. 
    $scope.content = response.data; 

}, function myError(error) { 

    console.log(error); 
    $scope.content = error.statusText; 
}); 
+0

heißt es, dass Header es ist keine Funktion –

+0

Dies ist nicht mit der für mich nicht funktioniert Kopfzeile "Inhaltslänge" Ihr Beispiel zeigt "Content-Type", aber wenn Sie nach "Content-Length" fragen, wird nur "null" zurückgegeben. Ich habe immer noch keine Möglichkeit gefunden, dies mit 'Content-Length' zu erledigen. – jkjustjoshing

+0

@jkjustjoshing Hast du das versucht? http://stackoverflow.com/questions/38190998/angularjs-get-headers-in-response –

Verwandte Themen