初始化

最近更新时间:2019-07-18 18:42:43

概述

通过腾讯云 API 密钥初始化,示例代码如下:

$tcbManager = TcbManager::init([
    "secretId" => "Your SecretId",
    "secretKey" => "Your SecretKey",
    "secretToken" => "Your SecretToken", // 使用临时凭证需要此字段
    "envId" => "Your envId"  // TCB环境ID,可在腾讯云TCB控制台获取
]);

注意:

需要提前开通 TCB 服务并创建环境,否则 SDK 无法使用。

在云函数环境下,支持免密钥初始化,示例代码如下:

$tcbManager = TcbManager::init([
    "envId" => "Your envId"
]);

初始化后得到一个 TcbManager 实例。(该实例是单例的,多次调用 TcbManager::init 只会初始化一次。)

您也可以通过 new TcbManager 创建实例,示例代码如下:

$tcbManager = new TcbManager([
    "secretId" => "Your SecretId",
    "secretKey" => "Your SecretKey",
    "secretToken" => "Your SecretToken", // 使用临时凭证需要此字段
    "envId" => "Your envId"  // TCB环境ID,可在腾讯云TCB控制台获取
])

每次初始化都会得到一个全新的 TcbManager 实例,如果需要管理多个腾讯云账号下的 TCB 服务,可通过此种方式创建多个 TcbManager 实例。

初始化完成之后,即可使用相关功能。

完整示例

list-functions源码):

<?php

// 使用 composer 时不需要 ../autoload.php -> tcb-manager-php/autoload.php
require_once "../autoload.php";

use TcbManager\TcbManager;

// 1. 初始化 TcbManager
$tcbManager = TcbManager::init([
    "secretId" => "Your SecretId",
    "secretToken" => "Your SecretToken", // 使用临时凭证需要此字段
    "envId" => "Your envId"  // TCB环境ID,可在腾讯云TCB控制台获取
]);

// 2. 获得云函数管理示例
$funcManager = $tcbManager->getFunctionManager();

// 3. 调用 getFunction 获取云函数详情
$result = $funcManager->getFunction("hellotcb");

// 4. 打印结果
print_r($result);

输出示例

stdClass Object
(
    [TotalCount] => 14
    [Functions] => Array
        (
            [0] => stdClass Object
                (
                    [ModTime] => 2019-05-20 11:40:55
                    [Status] => Active
                    [StatusDesc] => 
                    [FunctionName] => unit_test_3q4zyU
                    [Tags] => Array
                        (
                        )

                    [AddTime] => 2019-05-20 11:40:50
                    [Runtime] => Nodejs8.9
                    [Namespace] => demo-619e0a
                    [FunctionId] => lam-0mykhmki
                    [Description] => this is new description.
                )

            ...
        )

    [RequestId] => 5caec8d9-88c1-4c29-b776-67e4a6a2823e
)