使用 Route 53 網域註冊的程式碼範例 AWS SDKs - Amazon Route 53

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Route 53 網域註冊的程式碼範例 AWS SDKs

下列程式碼範例說明如何搭配 AWS 軟體開發套件使用 Route 53 網域註冊 (SDK)。

Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數,但您可以在其相關情境和跨服務範例中查看內容中的動作。

Scenarios (案例) 是向您展示如何呼叫相同服務中的多個函數來完成特定任務的程式碼範例。

如需 AWS SDK開發人員指南和程式碼範例的完整清單,請參閱使用 53 號路線 AWS SDK。本主題也包含有關入門的資訊以及舊SDK版的詳細資訊。

開始使用

下列程式碼範例示範如何開始使用 Route 53 網域註冊。

.NET
AWS SDK for .NET
注意

還有更多關於 GitHub。尋找完整範例,並了解如何在 AWS 程式碼範例儲存庫中設定和執行。

public static class HelloRoute53Domains { static async Task Main(string[] args) { // Use the AWS .NET Core Setup package to set up dependency injection for the Amazon Route 53 domain registration service. // Use your AWS profile name, or leave it blank to use the default profile. using var host = Host.CreateDefaultBuilder(args) .ConfigureServices((_, services) => services.AddAWSService<IAmazonRoute53Domains>() ).Build(); // Now the client is available for injection. var route53Client = host.Services.GetRequiredService<IAmazonRoute53Domains>(); // You can use await and any of the async methods to get a response. var response = await route53Client.ListPricesAsync(new ListPricesRequest { Tld = "com" }); Console.WriteLine($"Hello Amazon Route 53 Domains! Following are prices for .com domain operations:"); var comPrices = response.Prices.FirstOrDefault(); if (comPrices != null) { Console.WriteLine($"\tRegistration: {comPrices.RegistrationPrice?.Price} {comPrices.RegistrationPrice?.Currency}"); Console.WriteLine($"\tRenewal: {comPrices.RenewalPrice?.Price} {comPrices.RenewalPrice?.Currency}"); } } }
  • 如需詳API細資訊,請參閱AWS SDK for .NET API參考ListPrices中的。

Java
SDK對於爪哇 2.x
注意

還有更多關於 GitHub。尋找完整範例,並了解如何在 AWS 程式碼範例儲存庫中設定和執行。

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.route53domains.Route53DomainsClient; import software.amazon.awssdk.services.route53.model.Route53Exception; import software.amazon.awssdk.services.route53domains.model.DomainPrice; import software.amazon.awssdk.services.route53domains.model.ListPricesRequest; import software.amazon.awssdk.services.route53domains.model.ListPricesResponse; import java.util.List; /** * Before running this Java V2 code example, set up your development * environment, including your credentials. * * For more information, see the following documentation topic: * * https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html * * This Java code examples performs the following operation: * * 1. Invokes ListPrices for at least one domain type, such as the “com” type * and displays the prices for Registration and Renewal. * */ public class HelloRoute53 { public static final String DASHES = new String(new char[80]).replace("\0", "-"); public static void main(String[] args) { final String usage = "\n" + "Usage:\n" + " <hostedZoneId> \n\n" + "Where:\n" + " hostedZoneId - The id value of an existing hosted zone. \n"; if (args.length != 1) { System.out.println(usage); System.exit(1); } String domainType = args[0]; Region region = Region.US_EAST_1; Route53DomainsClient route53DomainsClient = Route53DomainsClient.builder() .region(region) .build(); System.out.println(DASHES); System.out.println("Invokes ListPrices for at least one domain type."); listPrices(route53DomainsClient, domainType); System.out.println(DASHES); } public static void listPrices(Route53DomainsClient route53DomainsClient, String domainType) { try { ListPricesRequest pricesRequest = ListPricesRequest.builder() .maxItems(10) .tld(domainType) .build(); ListPricesResponse response = route53DomainsClient.listPrices(pricesRequest); List<DomainPrice> prices = response.prices(); for (DomainPrice pr : prices) { System.out.println("Name: " + pr.name()); System.out.println( "Registration: " + pr.registrationPrice().price() + " " + pr.registrationPrice().currency()); System.out.println("Renewal: " + pr.renewalPrice().price() + " " + pr.renewalPrice().currency()); System.out.println("Transfer: " + pr.transferPrice().price() + " " + pr.transferPrice().currency()); System.out.println("Transfer: " + pr.transferPrice().price() + " " + pr.transferPrice().currency()); System.out.println("Change Ownership: " + pr.changeOwnershipPrice().price() + " " + pr.changeOwnershipPrice().currency()); System.out.println( "Restoration: " + pr.restorationPrice().price() + " " + pr.restorationPrice().currency()); System.out.println(" "); } } catch (Route53Exception e) { System.err.println(e.getMessage()); System.exit(1); } } }
  • 如需詳API細資訊,請參閱AWS SDK for Java 2.x API參考ListPrices中的。

Kotlin
SDK對於科特林
注意

還有更多關於 GitHub。尋找完整範例,並了解如何在 AWS 程式碼範例儲存庫中設定和執行。

/** Before running this Kotlin code example, set up your development environment, including your credentials. For more information, see the following documentation topic: https://docs.aws.amazon.com/sdk-for-kotlin/latest/developer-guide/setup.html */ suspend fun main(args: Array<String>) { val usage = """ Usage: <domainType> Where: domainType - The domain type (for example, com). """ if (args.size != 1) { println(usage) exitProcess(0) } val domainType = args[0] println("Invokes ListPrices using a Paginated method.") listPricesPaginated(domainType) } suspend fun listPricesPaginated(domainType: String) { val pricesRequest = ListPricesRequest { maxItems = 10 tld = domainType } Route53DomainsClient { region = "us-east-1" }.use { route53DomainsClient -> route53DomainsClient .listPricesPaginated(pricesRequest) .transform { it.prices?.forEach { obj -> emit(obj) } } .collect { pr -> println("Registration: ${pr.registrationPrice} ${pr.registrationPrice?.currency}") println("Renewal: ${pr.renewalPrice?.price} ${pr.renewalPrice?.currency}") println("Transfer: ${pr.transferPrice?.price} ${pr.transferPrice?.currency}") println("Restoration: ${pr.restorationPrice?.price} ${pr.restorationPrice?.currency}") } } }
  • 有API關詳細資訊,請參閱ListPricesAWS SDK的以取得 Kotlin API 的參考資料