咸虾米
咸虾米
  • 发布:2024-05-28 21:46
  • 更新:2024-05-29 10:22
  • 阅读:103

uniCloud七牛云扩展存储的问题

分类:uniCloud

如果使用uniCloud的扩展存储,在云对象中配置,如果我的上传域名被别人知道了,是不是别在在他的云函数中,就可以将图片上传到我的存储空间中。

如下代码,我如果看到了别人的domain,上传域名,是不是就可以往别人存储空间存,然后调用别人空间的图片那。

const extStorageManager = uniCloud.getExtStorageManager({  
    provider: "qiniu",  
    domain: "cdn.dcloud.com", // 域名地址  
});
2024-05-28 21:46 负责人:无 分享
已邀请:

最佳回复

DCloud_uniCloud_VK

DCloud_uniCloud_VK

注意: 此处的域名仅仅用来拼接返回你传的 cloudPath ,如 cloudPatha/b.jpg 域名是 cdn.example.com 则最终返回的 fileURL 就是 https://cdn.example.com/a/b.jpg

无论域名填什么,都只会上传到对应空间绑定的扩展存储里,无法上传到别的空间绑定的扩展存储里, 每个人每个空间的扩展存储是完全独立的,扩展存储和空间id绑定,在哪个空间执行的扩展存储api,就操作哪个扩展存储

  • 咸虾米 (作者)

    感谢大佬的回复,明白了。

    2024-05-30 13:45

喜欢技术的前端

喜欢技术的前端 - QQ---445849201

文档有说明,可以加token之类的,做判断,跟其他语言接口权限一个原理

获取前端上传参数  
接口名:getUploadFileOptions  

调用此接口可在云端获取前端上传所需参数,将上传参数返回给前端,前端使用 uni.uploadFile 即可上传文件  

你可以在调用 extStorageManager.getUploadFileOptions 前执行一些自己的业务逻辑,判断用户是否有上传权限
  • 咸虾米 (作者)

    感谢回复,在自己的代码逻辑里面判断没问题,主要是别人看到你云函数里面的上传地址,别人要是能拷贝你的云函数,是不是就可以向你的扩展存储里面存图了那?

    2024-05-29 09:27

  • DCloud_uniCloud_VK

    回复 咸虾米: 不能,看我上面的回复

    2024-05-29 10:23

要回复问题请先登录注册