CDK 一个 ApiMapping 密钥可能只包含字母、数字和其中之一...错误

CDK An ApiMapping key may contain only letters, numbers and one of... error

我正在尝试创建一个带有斜杠的 API 网关映射,但 CDK 给我一个格式错误:

Error: An ApiMapping key may contain only letters, numbers and one of $-_.+!*'(),

我使用的代码:

        apigatewayv2.ApiMapping(self, "AccountsGetBasePathMapping",
            api=accounts_get_api,
            domain_name=apigateway.DomainName.from_domain_name_attributes(self, "ApiMyDomainComApiGwCustomDomain",
                domain_name="api.mydomain.com",
                domain_name_alias_hosted_zone_id="xxxx",
                domain_name_alias_target="xxxx.execute-api.eu-west-1.amazonaws.com."
            ),
            api_mapping_key="accounts/get",
            stage=accounts_get_api_stage,        
        )

但是,如果我在控制台中尝试相同的操作,则允许使用斜杠字符:

这是 AWS CDK 的限制吗?

api_mapping_key 表示:

此阶段在自定义域上应映射到的路径

这是可选的,因此它不会 api_context_path 正如您在上面 accounts/get

例如:有一些API你想分离,你可以定义:

在自定义域上,您定义 api.mydomain.com/apiv1 所以 api_mapping_key 在这种情况下是 apiv1acount 路径应该是:api.mydomain.com/apiv1/account