微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何获取上传到Firebase的媒体的下载链接?

如何解决如何获取上传到Firebase的媒体的下载链接?

我正在开发Springboot REST API,并且我的一个端点将多媒体文件上传到Firebase,到目前为止,我已经成功做到了。

我不知道如何获取链接,我们可以从中打开并下载文件。 这是我以前做的代码

public OptivacWsResponse<String> uploadMedia(@RequestParam("file") multipartfile file,HttpServletRequest request,@PathVariable String nom throws OptivacFunctionnalException,IOException {
    final File file2 = convertMultiPartToFile(file);
    String filename=file.getoriginalFilename();
    StringBuilder build = new StringBuilder(filename);
    build.delete(filename.indexOf("."),filename.length());
    String filename2= build.toString();
    Path filePath = file2.toPath(); 
    if(checkFileExtension(filename)==true) {
        try {
            initFirebaseApp();
            Bucket bucket = StorageClient.getInstance().bucket();
            String extension =FilenameUtils.getExtension(filename);
            
            if(extension.comparetoIgnoreCase("jpg")==0 || extension.comparetoIgnoreCase("jpeg")==0 ||extension.comparetoIgnoreCase("png")==0 || extension.comparetoIgnoreCase("webp")==0 || extension.comparetoIgnoreCase("gif")==0) {
                bucket.create(nom+"/"+filename2,Files.readAllBytes(filePath),"image/"+extension);
            }
            
            if(extension.comparetoIgnoreCase("flv")==0 
                    || extension.comparetoIgnoreCase("avi")==0 ||extension.comparetoIgnoreCase("mp4")==0 || extension.comparetoIgnoreCase("mkv")==0) {
                bucket.create(nom+"/"+filename2,"video/"+extension);
            }
            String url= "https://storage.googleapis.com/<NOM_PROJET_FIREBASE>/"+nom+"/"+filename2;
            return new OptivacWsResponse<String>(url);

        }catch(Exception e) {
            e.printstacktrace();
            throw new OptivacFunctionnalException("une erreur est survenue lors de l'upload de l'image");
        }
    }else {
        throw new RequestValidationException("le fichier doit etre une image ou une vidéo");
    }
        
}

当我打开返回的链接时,它显示身份验证错误

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。