使用SAS URL将文件写入超过4 MB的Azure Fileshare时出现错误响应

时间:2017-02-16 14:55:35

标签: azure-storage-files

我们使用SAS URL(REST API)和HTTPS PUT方法在Azure文件存储上调用写操作(根据Azure技术名称进行范围操作)。我们成功执行此操作,并将数据写入文件,以获得小于4MB的任何数据。如果数据超过4 MB,则Azure文件存储将返回错误响应。

我们确实使用MuleSoft和Postman应用程序来执行此操作。所有应用程序的错误响应都相同。

错误 代码:RequestBodyTooLarge 消息:请求正文太大并超出了允许的最大限制。请求ID:2bbfe0e9-001a-0050-0291-87df64000000 MaxLimit:4194304

任何人都可以帮助或通过一些光线来理解问题和解决方案。

1 个答案:

答案 0 :(得分:1)

  

错误代码:RequestBodyTooLarge消息:请求正文太大并超出了允许的最大限制。 RequestId:2bbfe0e9-001a-0050-0291-87df64000000 MaxLimit:4194304

正如此官方PUT Range中提到的范围或x-ms范围

  

对于更新操作,范围最大可达4 MB 。对于清晰的操作,范围可以达到文件的完整大小的值。

     

使用Update选项调用Put Range会对指定文件执行就地写入。更新会覆盖指定范围内的任何内容。使用Put Range提交的每个更新操作范围最大可达4 MB。 如果您尝试上传大于4 MB的范围,该服务将返回状态代码413 (请求实体太大)。

这是我的测试,你可以参考它:

根据我的理解,如果范围大于4MB,我认为你需要将数据分成缓冲区(最大4MB),然后你可以调用PUT Range Rest API来更新你的具有特定范围的数据按顺序或并行。