Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services aws cdk-具有Lambda代理端点的Cognito授权程序的ApiGateway_Amazon Web Services_Aws Api Gateway_Aws Cdk - Fatal编程技术网

Amazon web services aws cdk-具有Lambda代理端点的Cognito授权程序的ApiGateway

Amazon web services aws cdk-具有Lambda代理端点的Cognito授权程序的ApiGateway,amazon-web-services,aws-api-gateway,aws-cdk,Amazon Web Services,Aws Api Gateway,Aws Cdk,我在设置一个API网关时遇到了问题,该网关带有一个由Cognito用户池保护的lambda代理。 我正在typescript中使用aws cdk 0.34.0 我所追求的设置是一个API网关,它有一个作为lambda函数代理的资源。这个单一端点需要由Cognito用户池进行保护 下面是我正在尝试的代码 但是,当我运行它时,我得到以下错误 apiDeployment (Deployment2E842E9E) No integration defined for method (Service: A

我在设置一个API网关时遇到了问题,该网关带有一个由Cognito用户池保护的lambda代理。 我正在typescript中使用aws cdk 0.34.0

我所追求的设置是一个API网关,它有一个作为lambda函数代理的资源。这个单一端点需要由Cognito用户池进行保护

下面是我正在尝试的代码

但是,当我运行它时,我得到以下错误

apiDeployment (Deployment2E842E9E) No integration defined for method (Service: AmazonApiGateway; Status Code: 400; Error Code: BadRequestException; Request ID: 64f4e3bb-9107-11e9-84f1-999724493159)
    new Deployment (/home/circleci/aws/node_modules/@aws-cdk/aws-apigateway/lib/deployment.ts:69:21)
我的打字脚本代码如下

const backendLambda=新lambda.Function(
这
“CampManager backendLambda”,
{
代码:新lambda.AssetCode(“../server/”,AssetPackageing.ZipDirectory),
处理程序:“src/index.js”,
超时:1000,
运行时:lambda.runtime.NodeJS10x
}
);
const backendApi=new api.RestApi(这是“CampManager后端api”);
const userPool=new cognito.userPool(这是“CampManager用户池”{
自动验证属性:[],
池名:“CampManager用户池”,
signitype:cognito.signitype.Username,
用户名别名属性:[
cognito.UserPoolAttribute.Email,
cognito.UserPoolAttribute.PhoneNumber
]
});
const cognitoAuthorizer=new api.CfnAuthorizerV2(
这
“CampManager授权人”,
{
apid:backendApi.restApiId,
authorizerType:api.AuthorizationType.Cognito,
身份来源:[“授权”],
authorizerUri:userPool.userPoolProviderUrl,
名字:“Cognito”
}
);
backendApi.root.addProxy({
defaultIntegration:新的api.lambdainIntegration(backendLambda),
defaultMethodOptions:{
authorizationType:api.authorizationType.Cognito,
authorigrid:cognitoAuthorizer.authorigrid,
操作名称:“代理”
}
});
const apiDeployment=新的api.Deployment(
这
“CampManager部署”,
{
api:backendApi,
描述:“营地管理员部署”
}
);
const apiStage=new api.Stage(这是“CampManager apiStage”{
部署:apiDeployment
});

你有没有找到解决这个问题的方法?我想这正是你想要的。你有没有找到解决这个问题的办法?我想这正是你想要的。