table-viewerをアプリに追加

スタックにtable-viewerを追加する

hello-stack.pyを開き、TableViewer コンストラクトをスタックに追加するために、次の強調表示された行を追記します。

from aws_cdk import (
    core,
    aws_lambda as _lambda,
    aws_apigateway as apigw,
)

from cdk_dynamo_table_viewer import TableViewer
from hitcounter import HitCounter


class MyStack(core.Stack):

    def __init__(self, scope: core.Construct, id: str, **kwargs) -> None:
        super().__init__(scope, id, **kwargs)

        # Defines an AWS Lambda resource
        hello = _lambda.Function(
            self, 'HelloHandler',
            runtime=_lambda.Runtime.PYTHON_3_7,
            code=_lambda.Code.asset('lambda'),
            handler='hello.handler',
        )

        hello_with_counter = HitCounter(
            self, 'HelloHitCounter',
            downstream=hello,
        )

        apigw.LambdaRestApi(
            self, 'Endpoint',
            handler=hello_with_counter.handler,
        )

        TableViewer(
            self, 'ViewHitCounter',
            title='Hello Hits',
            table=??????
        )  

table とは

お気づきのとおり、 TableViewerには、tableプロパティを指定する必要があります。

私たちがしたいことは、HitCounterの背後にあるDynamoDBテーブルに何らかの方法でアクセスすることです。しかし、HitCounterの現在のAPIは、テーブルをパブリックメンバーとして公開しておりません。


次のセクションでは、テーブルをHitCounterプロパティとして公開し、スタックからアクセスできるようにします。