背景
上传图片时需要保留原有的存量图片,不知道用户对存量图片做了什么操作,一次每次提交都是全量提交,但存量的图片没有File对象只有id和url,导致请求的时候没有二进制文件报错。
我的前端请求代码:
![](https://img.haomeiwen.com/i1681638/0a30512355761ad0.png)
请求的信息:
![](https://img.haomeiwen.com/i1681638/ed84199f1069d74d.png)
报错的日志:
![](https://img.haomeiwen.com/i1681638/4253c914448d195b.png)
百度文心一言的回复:
![](https://img.haomeiwen.com/i1681638/4b8fc6386acc7b12.png)
简单来说就是file这里原本要接收File类型的文件,因为没有就传了空字符串导致数据类型不一致报错。解决思路,通过存量图片的url转换为File对象从而实现提交时每个图片的file都是一个文件对象
文心一言给的转换方法:
![](https://img.haomeiwen.com/i1681638/2225700b71e8377f.png)
改进的代码:
![](https://img.haomeiwen.com/i1681638/383fcb11df52d48e.png)
实现效果:
![](https://img.haomeiwen.com/i1681638/336ebbfb2f854d25.png)
前2个还是存量数据第三个是新增数据,可以看到入参的file全部都有值。
网友评论