birdsystem/common

Birdsystem 的通用包

此包的规范仓库似乎已消失,因此该包已被冻结。

安装: 27

依赖: 0

建议: 0

安全: 0

类型:symfony-bundle

0.2 2020-12-02 13:56 UTC

This package is auto-updated.

Last update: 2020-12-04 16:19:56 UTC


README

用途

此组件包含 BirdSystem 中所有微服务使用的某些通用库/服务

安装

在您的 composer.json 文件中,添加以下代码

  "extra": {
    "symfony": {
      "endpoint": "https://flex-server.birdsystem.com"
    }
  }

这样做是为了使用我们自己的 flex-server,这样我们就可以使用我们自己的 私有 Flex Recipes

然后从这个库中需要这个库

composer require -W birdsystem/common:dev-master

-W 选项是为了更新此库所需的所有依赖项。

验证安装

您应该在您的 .env 文件中看到更多环境变量被添加。(这是通过 flex recipes 实现的)

在您自己的微服务中运行

bin/console debug:container birdsystem

如果您看到一些服务被列出,那么这意味着安装已成功。

使用

为了遵循 Symfony 服务容器 的最佳实践,通常 我们应该将我们自己的所有服务标记为 私有

使用私有服务,您不能使用 $container->get('service_name')

相反,通过类型提示使用服务(以下示例是使用 Company 微服务,它只是一个 作用域 HttpClient,具有预定义的 基础 URI

<?php
namespace App;

use Birdsystem\CommonBundle\MicroServiceClient\Company;

class Test{
    public function test(Company $company){
        $company->request('GET','/company');
    }  
}

上面的代码应该向 http://company/api/company 发送 GET 请求,因为您的 .env 文件中应该有如下定义

SERVICE_URL_COMPANY=http://company/api/

更新配方

如果我们后来向系统中添加了更多配置,并且已经更新了配方,您将需要更新它

bin/console recipes:install birdsystem/common --force