Điểm:0

AWS CDK thêm bản ghi bí danh tuyến 53 theo cách đơn giản nhất

lá cờ us

Tôi đã tạo Cổng API cho ổ cắm web bằng CDK. Để dễ nhớ URL hơn, tôi muốn cung cấp cho sadjl342r.execute-api.amazonaws một ALIAS trong Route53

Một cái gì đó như "my-ws-api.mydomain.tld"

Đây là cách tôi tạo cổng API

const websocketEventsLambda: IFunction = this.createWebsocketsLambda(props.stage);

this.apiGatewayWebSockets = new CfnApi(this, apiGatewayId, {
    tên: apiGatewayId,
    loại giao thức: "WEBSOCKET",
    routeSelectionExpression: "$request.body.topic",
    apiKeySelectionExpression: "$request.header.x-api-key"
});

const connectIntegration = new CfnIntegration(
    cái này,
    "websockets-connect-lambda-integration-" + props.stage,
    {
        apiId: this.apiGatewayWebSockets.ref,
        Loại kết nối: "INTERNET",
        loại tích hợp: "AWS_PROXY",
        tích hợpMethod: "POST",
        tích hợpUri:
            "arn:aws:apigateway:eu-central-1:lambda:path/2015-03-31/functions/arn:aws:lambda" +
            ":<REGION>:<ACCOUNT_ID>:function:" + websocketEventsLambda.functionName +
            "/lời gọi",
        passthroughBehavior: "WHEN_NO_MATCH",
        payloadFormatVersion: "1.0",
    }
);

const connectRoute = new CfnRoute(
    cái này,
    "apigateway-websockets-connect-route-" + props.stage,
    {
        apiId: this.apiGatewayWebSockets.ref,
        routeKey: "$connect",
        loại ủy quyền: "KHÔNG CÓ",
        mục tiêu: "tích hợp/" + connectIntegration.ref
    }
);

triển khai const = CfnDeployment mới (
    cái này,
    `apigatewayv2-websockets-deployment-` + props.stage,
    {
        apiId: this.apiGatewayWebSockets.ref
    }
);

new CfnStage(this, `apigateway-stage-${props.stage}`, {
    apiId: this.apiGatewayWebSockets.ref,
    tự động triển khai: đúng,
    triển khaiId: triển khai.ref,
    tên sân khấu: props.stage
});

triển khai.addDependsOn (connectRoute);
triển khai.addDependsOn (ngắt kết nối);
triển khai.addDependsOn (đăng kýRoute);
triển khai.addDependsOn (tuyến đường mặc định);

this.webSocketsApiURL =
    triển khai.apiId +
    ".execute-api." +
    này.khu vực +
    ".amazonaws.com/" + props.stage;

Bây giờ tôi cố gắng tạo ARecord trong cùng phạm vi (tôi đã sử dụng câu trả lời này làm điểm bắt đầu: https://stackoverflow.com/a/56599567/15013406)

const domainName: string = "ws-api-" + props.stage + "." + MIỀN;

route53.ARecord mới (cái này, "AliasRecord", {
    recordName: domainName,
    mục tiêu: route53.RecordTarget.fromAlias({
        trói buộc() {
            trở lại {
                tên dns: webSocketsApiURL,
                hostsZoneId: idontknowwhattoenterhere
            };
        }
    }),
    vùng: hostsZone
});

Tôi không biết phải nhập gì cho hostsZoneId trong đoạn mã cuối cùng. Lưu ý rằng câu trả lời này nói rằng đây phải là một số vùng khác với vùng miền của riêng tôi sẽ trỏ đến Cổng API

Nhìn thấy https://stackoverflow.com/a/56599567/15013406:

Lưu ý: hostsZoneId cho bản ghi bí danh của bạn không giống với id khu vực được lưu trữ của khu vực của riêng bạn.

)

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.