我一直在尝试自动化测试,将文本文件上传到使用 flowjshandler 的 Web api,所有这些都在 c# .net core 和 linux docker 容器中运行。从 Visual Studio 运行时,测试程序毫无例外地上传文件。但是,如果我在容器内运行测试程序和 Web api,我会在 asp .net core Web api 框架中遇到此异常:
超出行长度限制 100。,Microsoft.AspNetCore.WebUtilities,
在
Microsoft.AspNetCore.WebUtilities.BufferedReadStream.d__39.MoveNext()
我看过Microsoft.AspNetCore.WebUtilities
并找到了错误的来源,但不知道如何避免 100 个字符的限制。我尝试改变上传文件。
这是一条包含内容的多部分消息
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarym45GFZc25WVhjtVB
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="flowChunkNumber"
1
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="flowChunkSize"
1048576
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="flowCurrentChunkSize"
440
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="flowTotalSize"
440
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="flowIdentifier"
440-Boundarystxt
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="flowFilename"
Boundarys.txt
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="flowRelativePath"
Boundarys.txt
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="flowTotalChunks"
1
------WebKitFormBoundarym45GFZc25WVhjtVB
Content-Disposition: form-data; name="file"; filename="Boundarys.txt"
我正在使用Environment.Newline
在 Linux 容器上运行时无法识别行尾。将换行符更改为\r\n
在内容处置:表单数据中。
i.e
var nl = "\r\n";
sb.AppendFormat($"{nl}{BOUNDARY}{nl}Content-Disposition: form-data; name=\"flowChunkNumber\"{nl}{nl}{flowFileUpload.flowChunkNumber}{nl}{BOUNDARY}{nl}Content-Disposition: form-data;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)