代码之家  ›  专栏  ›  技术社区  ›  rpd

如何分析包含UTF-8字符的内容处置标头

  •  0
  • rpd  · 技术社区  · 7 年前

    我正在尝试使用客户端JavaScript解析HTTP内容处置头。当文件名由ASCII字符组成时,这很容易。但当涉及到非ASCII字符时,标题如下所示:

    Content-Disposition:attachment; filename="john?doe.jpg"; filename*=UTF-8''john%E2%80%93doe.jpg
    

    我可以在节点中解析这个。通过使用 content-disposition npm包。我尝试在客户端代码中使用此包,但由于浏览器(如Chrome)不支持 Buffer 类别:

    value = new Buffer(binary, 'binary').toString('utf8')
    

    有人能告诉我使用客户端JavaScript解析这些头的另一种方法吗,或者有一种方法可以替代 缓冲器 还有别的吗?

    我四处寻找解决方案,但每次有人问如何解析 内容处置 标题,答案仅适用于ASCII大小写。

    1 回复  |  直到 7 年前
        1
  •  3
  •   Tom Blodget    7 年前

    在web浏览器中,您可以使用:

    decodeURIComponent('john%E2%80%93doe.jpg')
    

    decodeURIComponent 设计用于%编码字节,表示文本,并假定Unicode字符集的UTF-8字符编码。