微软分片上传问题<bytes 2097152-3483321 of the file to be attached, in binary format>

114 阅读1分钟

前言

最近在对接outlook回复大附件上传的时候,官方文档指明

请求正文

指定要附加的文件的实际字节数,它们位于由 Content-Range 请求标头指定的位置范围内。

对接的时候正文我上传的是Base64编码后的字符串,在postman请求的时候是正常的,但是使用java代码时一直返回请求无效

总结

请求体和参数问题,请求体应使用byte[]数组,而且是截取后的字节数组

例:下面的 buffer 就是分段字节组

    int skipOffset = (int)tempInputStream.skip(start);
    int sliceSize = end - skipOffset;
    byte[] buffer = new byte[sliceSize];
    int read = tempInputStream.read(buffer);