Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript angularjs-如何获取内容长度标题_Javascript_Angularjs_Xml_Header_Content Length - Fatal编程技术网

Javascript angularjs-如何获取内容长度标题

Javascript angularjs-如何获取内容长度标题,javascript,angularjs,xml,header,content-length,Javascript,Angularjs,Xml,Header,Content Length,我正在对一个包含xml文件的url执行http GET请求,我需要获取响应头“Content Lenght”? 有什么办法得到它吗?我必须先验证文件的大小,然后才能下载它 这是我的密码 $http({ method : "GET", url : "http://url/file.xml" }).then(function mySucces(data) { console.log(response); $scope.content = response.d

我正在对一个包含xml文件的url执行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;
  });
来自Angular Docs,$http

响应回调获取

  • 数据{string | Object}–使用转换函数转换的响应体

  • 状态–{number}–响应的HTTP状态代码

  • headers–{function([headerName])}–Header getter函数

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

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

您可以通过使用标题名调用
headers
函数来获取响应标题,在本例中为
headers('Content-Type')


它说头不是一个函数这对我来说不适用于“内容长度”头。您的示例显示了“Content Type”,但当请求“Content Length”时,它只返回
null
。我仍然没有找到任何方法让它与“内容长度”一起工作。@jkjustjoshing你试过这个吗。小心,即使操作正确,CORS也可能不允许您访问该标头:
$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;
});