学习bug

2025.8.6,在发帖功能中,一直出现上传的图片页面无法上传的问题,bucket中有上传的图片,但是数据库中的image_url一直为空,复制up的源码也没有用

​记录一下我的解决办法

​export const uploadFile = async (image_key: string, file: ImageResult) => {

try {

const res = await storage.createFile('689318ae002bdaf1ece1', image_key, {

name: image_key,

type: 'image/jpeg',

size: file.height * file.width,

uri: file.uri,

});

const fileId = res.$id;

// 手动拼接图片 URL

const endpoint = 'https://cloud.appwrite.io/v1';

const projectId = 'XXX';

const bucketId = 'XXX';

const fileUrl = `{endpoint}/storage/buckets/{bucketId}/files/{fileId}/view?project={projectId}&mode=admin`;

return {

fileId,

fileUrl,

};

} catch (error) {

console.log('uploadFile error:', error);

throw error;

}

};

​const pickImage = async () => {

try {

let result = await ImagePicker.launchImageLibraryAsync({

mediaTypes: "images", "videos",

allowsEditing: true,

aspect: 4, 3,

quality: 1,

});

if (!result.canceled) {

const compressedImage = await compressImage(result.assets0.uri);

if (compressedImage) {

if (!compressedImage) {

Alert.alert("图片压缩失败");

return;

}

const { fileId, fileUrl } = await uploadFile(

ID.unique(),

compressedImage

);

if (!fileUrl) {

Alert.alert("图片上传失败");

return;

}

setImage(fileUrl);

}

}

} catch (error) {

console.log(error);

Alert.alert("图片选择失败");

}

};

​希望能帮助后来的朋友😘👌

相关推荐
Cloud_Shy6185 分钟前
解读《Effective Python 3rd Edition》:从练气到老魔(第七章 Item 51)
开发语言·人工智能·笔记·python·学习方法
AI+程序员在路上6 分钟前
CSP、PP、PV、HM 在 CiA402 标准下的差异解析
linux·c语言·开发语言·嵌入式硬件
nix.gnehc6 分钟前
Python 并发深度解析
服务器·开发语言·python
我是一颗柠檬7 分钟前
【Java项目技术亮点】Leaf号段模式双Buffer优化
java·开发语言·分布式·后端·架构
Cx330❀10 分钟前
【MySQL基础】详解MySQL数据类型:底层原理、越界测试与最佳实践
linux·开发语言·数据库·c++·mysql
星恒随风14 分钟前
C++ string 入门(一)
开发语言·c++·笔记·学习
skywalk816320 分钟前
继续推进心语项目6.15 @CodeArts
开发语言·算法·编程
嵌入式-老费24 分钟前
esp32开发与应用(看门狗测试)
java·开发语言·数据库
不吃鱼的羊28 分钟前
DaVinci配置NVM模块
前端·javascript·网络
闫有尽意无琼28 分钟前
qt控件未指定父对象或delete致堆内存泄露
开发语言·qt