我刚开始使用谷歌云服务 并发现以下内容只能使用blob实现,但我想使用云存储中的图像名称。
是否有办法使用serveURL调整图像大小(如果是这样) 我该如何实现它,即如何从云存储中提供存储桶名称和映像名称?
并构造URL并传递参数
我可以参考哪些博客或代码?
答案 0 :(得分:2)
这是调整图片大小的博客
这是示例PHP代码,但如何使其在FireBase中工作,您需要参考下面的链接 click here to read more
index.php:
<?php
//var_dump($_FILES['uploaded_files']['tmp_name']);
syslog(LOG_WARNING, "Request came");
require_once 'google/appengine/api/cloud_storage/CloudStorageTools.php';
use google\appengine\api\cloud_storage\CloudStorageTools;
syslog(LOG_WARNING, "Imported Cloud Storage Tools");
//var_dump( $_GET);
$object_url=$_GET["image"];
$size=intval($_GET["size"]);
syslog(LOG_WARNING, "Object URL $object_url");
syslog(LOG_WARNING, "Size $size");
$bucket="gs://YOUR-PROJECT-ID.appspot.com/bucket_name/";
$object_image_url = CloudStorageTools::getImageServingUrl($object_url,['size' => $size, 'crop' => false]);
syslog(LOG_WARNING, "Output Url $object_image_url");
header("location: $object_image_url");
closelog();
?>
app.yaml:
runtime: php55
api_version: 1
handlers:
- url: /.*
script: index.php
答案 1 :(得分:1)
get_serving_url()是App Engine的一部分,因此您无法在Firebase中使用它(除非Firebase最终支持它),但您绝对可以store the images in the Google Cloud Storage而不是Blobstore,这是顺便说一句是推荐的方式。
答案 2 :(得分:0)
您可以使用Firebase Javascript SDK将您的文件发送到Google存储空间,并使用AppEngine中的PHP +库构建API示例以生成对象的网址,这些存储库位于同一个存储区中。
在应用PHP中,请记住在app.yaml
中添加以下内容:
runtime: php55
api_version: 1
handlers:
- url: /.*
script: index.php
之前,使用gcloud
部署您的示例API:
gcloud app deploy