本文整理汇总了TypeScript中aws-sdk.APIGateway.getDomainNames方法的典型用法代码示例。如果您正苦于以下问题:TypeScript APIGateway.getDomainNames方法的具体用法?TypeScript APIGateway.getDomainNames怎么用?TypeScript APIGateway.getDomainNames使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类aws-sdk.APIGateway
的用法示例。
在下文中一共展示了APIGateway.getDomainNames方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: generateAPIGatewayCustomDomain
private async generateAPIGatewayCustomDomain() {
let domain = this.resources.customDomainName || this.resources.restApi;
let cert;
// Check custom certificate
if (!this.resources.customCertificate) {
return;
}
let endpoint = this.resources.customDomainEndpoint || "EDGE";
let region;
if (endpoint === "EDGE") {
// Enforce region to us-east-1 for certificate
region = "us-east-1";
}
// For EDGE need to be in us-east-1 -> might want to upgrade to both EDGE and REGIONAL
cert = await this._createCertificate(domain, region);
let res = await this._awsGateway.getDomainNames().promise();
let custom;
// Search for the custom domain
for (let i in res.items) {
if (res.items[i].domainName === domain) {
custom = res.items[i];
}
}
if (!custom) {
let params: any = {
domainName: domain,
endpointConfiguration: {
types: [endpoint]
}
};
if (endpoint === "EDGE") {
params.certificateArn = cert.CertificateArn;
} else {
params.regionalCertificateArn = cert.CertificateArn;
}
// Create one
console.log("Create API Gateway custom domain", domain);
custom = await this._awsGateway.createDomainName(params).promise();
await this._awsGateway
.createBasePathMapping({
domainName: domain,
restApiId: this.restApiId,
basePath: "",
stage: this.deployment.uuid
})
.promise();
}
await this._createDNSEntry(
domain,
"CNAME",
custom.distributionDomainName || custom.regionalDomainName
);
}