如何减少 Google PHP 库的大小?

bng*_*bng 5 php google-api google-api-php-client

Google php API 库的规模非常大。我只想给图书馆发一封电子邮件。我怎样才能减小它的大小?

Mic*_*tch 11

为了减少供应商库的大小, google/apiclient在composer.json上提供配置以在更新后运行清理脚本。

这样您就可以仅指定所需的 api,
以减少生产时的存储大小。
特别是如果您打算在存储要求更严格的环境(例如无服务器架构)中使用它。

参考: https: //packagist.org/packages/google/apiclient

“google/apiclient-services”下指定的所需api,请参考https://github.com/googleapis/google-api-php-client-services/tree/main/src

{
    "require": {
        "google/apiclient": "^2.7"
    },
    "scripts": {
        "post-update-cmd": "Google\\Task\\Composer::cleanup"
    },
    "extra": {
        "google/apiclient-services": [
            "Drive",
            "YouTube"
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

对于根本没有服务的情况(例如,您仅使用 API 来验证 JWT ID 令牌的完整性),extra.google/apiclient-services数组/列表需要包含一个空字符串

"extra": {
    "google/apiclient-services": [ "" ]
}
Run Code Online (Sandbox Code Playgroud)

如果您已经安装了一整套 api,您可能需要先删除整个 apiservices 文件夹,然后进行 Composer 更新。

$ rm -r vendor/google/apiclient-services
$ composer update
Run Code Online (Sandbox Code Playgroud)


DaI*_*mTo 1

该库很大的原因是它包含所有 Google Discovery api 的所有类,我认为大约有 120 个类。

据我所知,减少大小的唯一方法是删除所有不需要的 API。检查Google/Service目录。删除您不打算使用的 api。

留下一切。

还有一个选项

composer install --no-dev
Run Code Online (Sandbox Code Playgroud)