2017-10-11 331 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

相關問題