Dart HttpRequest::getRequestHeaders似乎只返回头的子集?

Dart HttpRequest::getRequestHeaders似乎只返回头的子集?,dart,dart-polymer,Dart,Dart Polymer,正如你所看到的,我做了一个请求,结果成功了。我的问题是我在下面打印的3行 var headerList = request.getAllResponseHeaders(); print("RunTime type of Header List: ${headerList.runtimeType}"); print("Header List Count: ${headerList.length}"); print("Header List is as follows: \n$headerList"

正如你所看到的,我做了一个请求,结果成功了。我的问题是我在下面打印的3行

var headerList = request.getAllResponseHeaders();
print("RunTime type of Header List: ${headerList.runtimeType}");
print("Header List Count: ${headerList.length}");
print("Header List is as follows: \n$headerList");
因此,一个
HttpRequest
请求似乎没有返回足够的信息。我希望它能返回所有标题信息的完整字符串、k=>v对的映射或数组

似乎它只提取了前64个字符

为什么它不能得到所有的文件?理想情况下,我试图通过
request.getResponseHeader(“contentdisposition”)获取“contentdisposition”标题

我想您需要添加

访问控制公开标题
内容配置

在您的服务器上

访问控制公开头文件
(可选)-XMLHttpRequest 2对象 具有一个
getResponseHeader()
方法,该方法返回 特定响应头。在CORS请求期间
getResponseHeader()
方法只能访问简单的响应头。 简单响应头的定义如下:

  • 缓存控制
  • 内容语言
  • 内容类型
  • 到期
  • 最后修改
  • 布拉格马
如果您希望客户端能够访问其他头,您可以 必须使用
访问控制公开标题
标题。价值 此标题是以逗号分隔的要删除的响应标题列表 向客户机公开


打印语句打印什么?您可以在控制台中看到下面的语句。已脱机,很抱歉延迟。有趣。我的意思是,你可以看到它们实际上是由服务器返回的,因为它们在我的响应中。不?不是100%清楚“…希望客户端能够访问其他头…”的意思是什么,但是列出了你得到的头,没有列出的头。我想,如果这些头被服务器阻止,那么将它们发送到浏览器是没有意义的。一位同事创建了一个dart黑客程序,用于从restful端点下载文件,需要一个承载令牌才能访问,因此他抓取它,然后检查配置以确保该文件具有名称。。。如果没有,它将为它设置一个默认名称。我认为我目前面临的问题是,您可以从resonse中看到,处置被提取并在响应中,但是HttpResponse似乎没有通过
request.getAllResponseHeaders()打印出所有的标题打印出来的呼叫我已经知道了。您是否尝试在服务器上为要访问的标题添加
访问控制公开标题
标题?因为如果未提供标题,浏览器将无法将其提供给JS(因此Dart)。