当前位置: 首页 > 知识库问答 >
问题:

我有哪些选项可以将配置文件从Google云存储拉到App Engine Standard?

柴琦
2023-03-14

我有两个web应用程序:

  • Web app1是一个内部工具(托管在Premise中),它允许我们更改一些配置,并以JSON形式将其保存到本地。php文件中,然后将其同步到Google Cloud Storage中。
  • Web App2是另一个托管在App Engine(Standard-PHP72)上的内部工具。此应用程序需要不断地从Web App1读取配置文件。

我们还有一些其他的web应用程序也依赖于这些配置文件,但是由于它们与这个特定的问题无关,所以我就不解释它们了。

    null
    null

共有1个答案

蒯翰墨
2023-03-14

每当云存储更新时,从App2访问云存储的一种方法是:

  1. 在应用程序上创建一个endpoint,启动文件的读取过程。因为您将在PHP内部,所以使用PHP云存储libs.

导入库:

composer require google/cloud-storage
use Google\Cloud\Storage\StorageClient;

/**
 * Download an object from Cloud Storage and save it as a local file.
 *
 * @param string $bucketName the name of your Google Cloud bucket.
 * @param string $objectName the name of your Google Cloud object.
 * @param string $destination the local destination to save the encrypted object.
 *
 * @return void
 */
function download_object($bucketName, $objectName, $destination)
{
    $storage = new StorageClient();
    $bucket = $storage->bucket($bucketName);
    $object = $bucket->object($objectName);
    $object->downloadToFile($destination);
    printf('Downloaded gs://%s/%s to %s' . PHP_EOL,
        $bucketName, $objectName, basename($destination));
}
import requests

def hello_gcs(event, context):
    """Triggered by a change to a Cloud Storage bucket.
    Args:
         event (dict): Event payload.
         context (google.cloud.functions.Context): Metadata for the event.
    """
    file = event
    url = 'https://app2.appspot.com/'
    response = requests.get(url)
    print(f"call made.")
    print(f"Processing file: {file['name']}.")
 类似资料:
  • 本文向大家介绍vim 我可以使用哪些选项?,包括了vim 我可以使用哪些选项?的使用技巧和注意事项,需要的朋友参考一下 示例 如果您不知道应该使用哪些选项,则可能对该:options命令感兴趣。 这将打开一个列出所有Vim选项并显示其当前值的拆分。有26个部分显示您可以尝试的所有选项。 例如 在值行(例如set nowrap)上,您可以按CR切换值(如果它是二进制值)。在选项行(例如wrap lo

  • 问题内容: 我在任何地方都找不到真正的信息,我正在寻找可以在API中使用的可能键的列表。 这里是一些上下文: 现在,如果要指定客户端SSL,则需要将其配置为FireFox配置文件的首选项。我正在尝试查找所有首选项的列表,以便可以使用它。 问题答案: 你可以看一下这是在

  • 问题内容: 相对路径在log4j.properties文件中使用。 如何以编程方式找到存储日志的绝对路径? 问题答案: 来自:http : //www.gunith.com/2010/11/how-to-get-the-file-path-of-a- log4j-log-file/ 假设log4j.properties文件如下所示, 在这种情况下,您的Java代码应如下所示, 注意, 迁移日志 用

  • 谷歌(遗憾地)计划破坏存储权限,使应用程序无法使用标准文件API(和文件路径)访问文件系统。许多人反对它,因为它改变了应用程序访问存储的方式,在很多方面,它是一个受限的API。 因此,如果我们希望处理各种存储卷并访问其中的所有文件,我们将需要在未来的Android版本上完全使用SAF(存储访问框架)(在Android Q上,我们至少可以暂时使用一个标志来使用正常的存储权限)。 例如,假设您想创建一

  • 我正在使用Spring引导连接到谷歌云存储。 我能够连接到一个文件,并从谷歌云存储桶中读取内容。 但是我不能得到谷歌云存储桶中所有文件的列表。 请帮帮我。 这很有效 这不工作。 有什么原因吗?

  • 问题内容: 我花了很多时间将Java代码样式设置修改为自己喜欢的方式。 例如,转到。 我已将eclipse设置为使用空格而不是制表符,在Java文件顶部自定义了标题,以及大量其他内容。 现在,我正在另一台计算机上工作,并且必须安装Eclipse Helios的新副本。 是否有可以重复使用的文件或文件集,所以我不必每次都进行设置? 问题答案: 如果您尚未设置“项目特定设置”,则位于 如果您具有“项目