2017-10-11 144 views
1

我正在使用Laravel 5.2构建应用程序,我已经将它与Firebase存储连接起来存储文件。每一件事工作正常,但是当我从火力得到的图像它只返回以下阵列没有任何downlabable链接如何从firebase storage PHP获取图片的下载网址?

"type" => "file" 
    "dirname" => "FUEL" 
    "path" => "FUEL/Kaleem.jpeg" 
    "timestamp" => 1507750905 
    "mimetype" => "image/jpeg" 
    "size" => "129335" 

但是,当我去火力控制台它给了我类似的下载链接,以下

https://firebasestorage.googleapis.com/v0/b/fuel.appspot.com/o/fuel%2F1?alt=media&token=41c1d708-7bc2-41b4-86cf-2536062a261c

有什么办法从PHP使用firebase存储获取图片的downloadUrl?

回答

0

你应该能够与Google Cloud Storage APIs帮助下载,尤其是PHP SDK

或者,您可以建立自己的下载网址。为此,您需要允许对象公开可读(allow read;),percent encode您的文件路径,并且该对象将通过具有以下格式的网址可用:https://firebasestorage.googleapis.com/b/<YOUR_BUCKET>/o/<PERCENT_ENCODED_PATH_TO_FILE>?alt=media

+0

我只想在下面做一些操作,但它是它在JavaScript中,我想做同样的事情在php.'var存储= firebase.storage(); $ scope.getImgUrl =函数(文件){ storage.ref( “图像/” +文件+ “.PNG”) .getDownloadURL() 。然后(函数的onSuccess(URL){ 返回URL; } ) .catch(function onError(err){ console.log(“Error occured ...”+ err); }) }' – Kaleem

+0

在PHP SDK中找不到'getDownloadURL()'的任何方法或属性,请帮助有任何想法或任何示例代码。 – Kaleem

+0

的PHP SDK有一个[signedURL(http://googlecloudplatform.github.io/google-cloud-php/#/docs/google-cloud/v0.39.2/storage/storageobject?method=signedUrl)功能,可以让你创建一个下载URL。了解更多关于签署网址[这里](https://cloud.google.com/storage/docs/access-control/signed-urls) – Jeff

相关问题