Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.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 如何获取纯二进制文件_Javascript_Typescript_Upload_Filereader_Antd - Fatal编程技术网

Javascript 如何获取纯二进制文件

Javascript 如何获取纯二进制文件,javascript,typescript,upload,filereader,antd,Javascript,Typescript,Upload,Filereader,Antd,我有一个文件,我上传使用 html呈现程序: <Upload beforeUpload={((file: RcFile, fileList: RcFile[]): boolean => {this.requestUpload(file, (fileList.length || 0 )); return false;})} ></Upload> 因此,从那一刻起,我得到了一个RcFile(它只是扩展了类型file),我不知道如何获得文

我有一个文件,我上传使用

html呈现程序:

    <Upload
        beforeUpload={((file: RcFile, fileList: RcFile[]): boolean => {this.requestUpload(file, (fileList.length || 0 )); return false;})}
    ></Upload>
因此,从那一刻起,我得到了一个
RcFile
(它只是扩展了类型
file
),我不知道如何获得文件的原始二进制文件。我的API只处理原始二进制文件,其他什么都不处理。所以我需要
文件:r.result,
成为纯二进制原始数据

我发现了另一个stackoverflow问题,但他们都说应该怎么做(使用base64或其他),而不是说如果您没有其他选择来更改它,该如何做


我怎样才能做到这一点

根据您链接的文件上传工具(),您应该首先:“在“ng文件上传”标签下询问StackOverflow问题。”因此,将该标签添加到此帖子中

然后,如果我在文档上按Ctrl+F键选择“二进制”,我会看到:

Upload.http({
  url: '/server/upload/url',
  headers : {
    'Content-Type': file.type
  },
  data: file
})

看起来他们正在传递一个文件对象作为数据,文件类型的w/e在头中。我还没试过这个

而不是
r.readAsArrayBuffer
,您尝试了
r.readAsBinaryString()
?是的,我实际上可以看到文件(不是二进制文件),但是我如何将二进制字符串转换成纯二进制文件呢?同样,就像我上传一个txt一样,r.result是txt的确切内容,但不是二进制的。我认为二进制字符串和Javascript中的一样接近。我很想看到其他答案…@TJBlackman如果我检查一些像我发送的一样的上传库,默认情况下他们会上传一个纯二进制文件。但我找不到怎么做。那一定是
Blob
ArrayBuffer
。你能给我贴一个API文档的链接让我读一下吗?做一些阅读:我没有使用ng文件上传。。。我给你举个例子。我使用的是标签中的这个,也是我问题的第一行(如果你点击,你将进入此页面),我的问题不是如何使用它们,因为我知道如何使用它们的内置http发送数据,但我想使用我的服务(已经设置了正确的头/令牌等),所以我想知道一种从文件类型中获取二进制文件的方法
Upload.http({
  url: '/server/upload/url',
  headers : {
    'Content-Type': file.type
  },
  data: file
})