2017-05-08 63 views
0

我正在角2项目中工作。后端开发人员向我提出了一个错误,但我不知道该怎么做。 下面是步骤和细节:javascript上传器可以更改文件的二进制代码吗?

1-我创建一个名为1.txt的文件,文件内只是。

2 - 我通过https://github.com/valor-software/ng2-file-upload这个包

3-那我问到服务器给我的文件列表,我点击的1.txt下载上传文件到服务器。

4-当下载完了我看到的1.txt里面这些行:

------WebKitFormBoundaryt97WFszMgfTbTJJm 
Content-Disposition: form-data; name="file"; filename="11.txt" 
Content-Type: text/plain 

1 
------WebKitFormBoundaryt97WFszMgfTbTJJm-- 

我只是想看看。这个结果也像png,docx等一样破坏了其他文件。

所以,后端开发人员对我说: 当文件上传时,JS库不应该改变二进制文件的内容。

但我看不到任何设置来做到这一点。我应该对他们说什么?

P.S.后端开发人员远离我和他们用Java编写的项目。

回答

2

默认情况下,您正在使用的库将生成多部分请求主体。

这是正常的。 This is standard。这是如果您使用常规(无JavaScript)表单提交来发布文件会发生的情况。这是大多数服务器端系统希望通过HTTP发送文件的方式。

你可以告诉他们编写他们的代码来期望这种格式的数据。

或者你可以看看它说你的库文件:

disableMultipart - 如果“真”,禁止使用文件上传一个多形式,而是流的文件。某些API(例如Amazon S3)可能希望将文件流式传输,而不是通过表单发送。默认为false。

...并打开该选项。

相关问题