学习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.assets[0].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("图片选择失败");

}

};

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

相关推荐
kylezhao20191 天前
在C#中实现异步通信
开发语言·c#
05大叔1 天前
大事件Day01
java·开发语言
Legendary_0081 天前
从DC接口改成Type-C:LDR6328芯片助力传统设备升级快充体验
c语言·开发语言
白柚Y1 天前
react的hooks
前端·javascript·react.js
至为芯1 天前
IP5385至为芯支持C口双向快充的30W到100W移动电源方案芯片
c语言·开发语言
月明长歌1 天前
Javasynchronized 原理拆解:锁升级链路 + JVM 优化 + CAS 与 ABA 问题(完整整合版)
java·开发语言·jvm·安全·设计模式
我的golang之路果然有问题1 天前
实习中遇到的 CORS 同源策略自己的理解分析
前端·javascript·vue·reactjs·同源策略·cors
独自破碎E1 天前
说说Java中的常量池
java·开发语言
郝学胜-神的一滴1 天前
Qt OpenGL 生成Mipmap技术详解
开发语言·c++·qt·系统架构·游戏引擎·图形渲染·unreal engine
程序员三明治1 天前
【Java基础】深入 String:为什么它是不可变的?从底层原理到架构设计
java·开发语言·java基础·string·不可变