【RNOH】HarmonyOS 鸿蒙Next RNOH 0.72.32 fetch请求body为 FormData时,headers自动带上了Expect: 100-continue,如何清除?
【RNOH】HarmonyOS 鸿蒙Next RNOH 0.72.32 fetch请求body为 FormData时,headers自动带上了Expect: 100-continue,如何清除? RNOH 0.72.32 fetch请求body为 FormData时, headers自动带上了Expect: 100-continue,如何清除?
更多关于【RNOH】HarmonyOS 鸿蒙Next RNOH 0.72.32 fetch请求body为 FormData时,headers自动带上了Expect: 100-continue,如何清除?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

更多关于【RNOH】HarmonyOS 鸿蒙Next RNOH 0.72.32 fetch请求body为 FormData时,headers自动带上了Expect: 100-continue,如何清除?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
经过验证,问题不在于 Expect: 100-continue, 而是鸿蒙端的 fetch 请求在上传时,使用了分片上传的功能,在 Header 中 可以查看到 Transfer-Encoding: chunked
, 而这个属性正常应该是服务端下发的,如果作为客户端上报,那有可能服务端没有支持,导致了上传失败。
在HarmonyOS(鸿蒙)系统中,当你使用fetch API发送请求且body为FormData时,如果headers自动带上了Expect: 100-continue
,这通常是由于fetch的内部机制或浏览器行为导致的。要清除这个header,你可以尝试以下几种方法(尽管这些方法可能因系统或浏览器的差异而有所不同,但基于你的要求,我将不提及Java或C语言相关的解决方案):
-
使用Blob或ArrayBuffer代替FormData: 如果可能,将FormData数据转换为Blob或ArrayBuffer,然后发送。这可能会改变内部处理,从而避免自动添加
Expect: 100-continue
。 -
自定义XMLHttpRequest: 不使用fetch,而是使用XMLHttpRequest手动发送请求。在XMLHttpRequest中,你可以完全控制headers的发送。
-
检查并修改Fetch的配置: 虽然HarmonyOS的fetch实现可能与标准Web API有所不同,但查看是否有配置选项可以禁用
Expect: 100-continue
可能是一个方向。不过,这通常不是标准API的一部分。 -
服务端处理: 如果以上方法都不可行,考虑在服务端处理
Expect: 100-continue
。虽然这不是解决问题的根本原因,但可以作为一种临时解决方案。
如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html