我正在尝试使用签名 URL 将多个图像上传到 s3 存储桶。流程是前端应用向服务器发送 GET 请求,以获取要上传的每个图像的签名 URL。然后,前端应用程序使用签名的 URL 将图像直接上传到 s3 存储桶。
我的问题是我如何处理一张图片上传失败的情况?
例如,如果我想上传三个图像,而其中一个未能上传,在让用户尝试再次上传文件之前,我是否必须从s3存储桶中删除另外两个图像?
/*
* @param {array} images: Array of objects of shape ({image: object, signedUrl: string})
*
*/
const uploadImages = (images) => {
const axiosPutPromises = images.map(({ image, signedUrl }) => {
const putFile = () => axios.put(signedUrl, image, {
headers: {
"Content-Type": image.type
}
});
return putFile();
});
try {
const res = await axios.all(axiosPutPromises);
// dispatch res to redux store
} catch (err) {
/*Not sure how to handle error where only one files fails to upload*/
}
所有的人都使用promise,所有人都在引擎盖下。promise,一切都是全有或全无。一旦阵列中的所有promise都解决,它就会解析,或者一旦其中一个promise被拒绝,它就会拒绝。换句话说,它要么使用包含所有已解析值的数组进行解析,要么使用单个错误进行拒绝。
默认情况下,您的用例应该以这种方式处理。
我没有使用过axios,但是我在一个使用常规promise的项目中处理这个问题的方式是避免拒绝。
因此,我捕获每个工作promise中的任何错误,然后接受具有结构化值的promise,使我能够区分成功与失败。然后,您可以检查 Promise.all()
返回的数组,并在那里执行所需的任何错误处理。
我想上传两个或更多的图片,使用一个表单在不同的领域到数据库使用Codeigniter。 但是这里只有一个正在上传...有人能帮我吗... 我的控制器 这是我的模型 这是我的看法 我的数据库 请帮我上传到单独的数据库字段作为两个单独的文件
我无法上载firebase存储上的配置文件图像。我正在把烤面包片上的错误打印出来。为什么会出现这种情况?我无法解决这个问题,我审查了我的代码很多次。问题可能是什么?我如何调整我的代码以使其正常工作?提前向大家表示感谢。
我需要设置公司代理,以便Docker可以从公共注册表下载图像。 我使用Ubuntu 12.04机器。我找到了这个答案,但是在Ubuntu 12.04中不存在。我该怎么做呢? 谢谢
我在Python中的Selenium webdriver上遇到了一个图像上传问题,我检查了HTML并使用完整的Xpath来定位元素,但没有工作。我仍然收到此错误selenium.common.exceptions.nosuchelementexception:消息:没有这样的元素:找不到元素:{“method”:“XPath”,“selector”:“/html/body/div[2]/div/d
我正在尝试加载存储在应用程序文件夹上的图像当我打开活动时,我从logcat收到了这个错误: 1-20 01:30:40.125 14331-14331/mx.eusaga。af W/ImageView:无法打开内容:content://mx.eusaga.af.fileprovider/imagenes/1-db384fa8-f28b-4595-abbf-d45d38fd4036.jpgjava.
我得到同样的错误,比如 数组([lpj]= 这是我的控制器 萨米能帮我吗?