angularjs - 我如何获得内容长度标题

时间:2016-07-01 20:03:46

标签: javascript angularjs xml header content-length

我正在对一个有xml文件的网址发出http GET请求,我需要获取响应标头“Content-Lenght”? 有没有办法得到它?我必须在下载之前验证文件的大小。

这是我的代码

$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;
  });

1 个答案:

答案 0 :(得分:1)

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

响应回调获取

  
      
  • data - {string | Object} - 使用转换函数转换的响应体。

  •   
  • status - {number} - 响应的HTTP状态代码。

  •   
  • headers - {function([headerName])} - 标头getter函数。

  •   
  • config - {Object} - 用于生成请求的配置对象。

  •   
  • statusText - {string} - 响应的HTTP状态文本。

  •   

您可以通过使用标题名称调用headers函数来获取响应标头,在本例中为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;
});