RegisterDomain 搭配 AWS SDK 或 CLI 使用 - Amazon Route 53

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

RegisterDomain 搭配 AWS SDK 或 CLI 使用

下列程式碼範例示範如何使用 RegisterDomain

動作範例是大型程式的程式碼摘錄,必須在內容中執行。您可以在下列程式碼範例的內容中看到此動作:

.NET
適用於 .NET 的 SDK
注意

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

/// <summary> /// Initiate a domain registration request. /// </summary> /// <param name="contact">Contact details.</param> /// <param name="domainName">The domain name to register.</param> /// <param name="autoRenew">True if the domain should automatically renew.</param> /// <param name="duration">The duration in years for the domain registration.</param> /// <returns>The operation Id.</returns> public async Task<string?> RegisterDomain(string domainName, bool autoRenew, int duration, ContactDetail contact) { // This example uses the same contact information for admin, registrant, and tech contacts. try { var result = await _amazonRoute53Domains.RegisterDomainAsync( new RegisterDomainRequest() { AdminContact = contact, RegistrantContact = contact, TechContact = contact, DomainName = domainName, AutoRenew = autoRenew, DurationInYears = duration, PrivacyProtectAdminContact = false, PrivacyProtectRegistrantContact = false, PrivacyProtectTechContact = false } ); return result.OperationId; } catch (InvalidInputException) { _logger.LogInformation($"Unable to request registration for domain {domainName}"); return null; } }
  • 如需 API 詳細資訊,請參閱《適用於 .NET 的 AWS SDK API 參考》中的 RegisterDomain

CLI
AWS CLI

註冊網域

下列 register-domain 命令會註冊網域,從 JSON 格式的檔案擷取所有參數值。

此命令僅在 us-east-1 區域中執行。如果您的預設區域設定為 us-east-1,您可以省略 region 參數。

aws route53domains register-domain \ --region us-east-1 \ --cli-input-json file://register-domain.json

register-domain.json 的內容:

{ "DomainName": "example.com", "DurationInYears": 1, "AutoRenew": true, "AdminContact": { "FirstName": "Martha", "LastName": "Rivera", "ContactType": "PERSON", "OrganizationName": "Example", "AddressLine1": "1 Main Street", "City": "Anytown", "State": "WA", "CountryCode": "US", "ZipCode": "98101", "PhoneNumber": "+1.8005551212", "Email": "mrivera@example.com" }, "RegistrantContact": { "FirstName": "Li", "LastName": "Juan", "ContactType": "PERSON", "OrganizationName": "Example", "AddressLine1": "1 Main Street", "City": "Anytown", "State": "WA", "CountryCode": "US", "ZipCode": "98101", "PhoneNumber": "+1.8005551212", "Email": "ljuan@example.com" }, "TechContact": { "FirstName": "Mateo", "LastName": "Jackson", "ContactType": "PERSON", "OrganizationName": "Example", "AddressLine1": "1 Main Street", "City": "Anytown", "State": "WA", "CountryCode": "US", "ZipCode": "98101", "PhoneNumber": "+1.8005551212", "Email": "mjackson@example.com" }, "PrivacyProtectAdminContact": true, "PrivacyProtectRegistrantContact": true, "PrivacyProtectTechContact": true }

輸出:

{ "OperationId": "b114c44a-9330-47d1-a6e8-a0b11example" }

若要確認操作成功,您可以執行 get-operation-detail。如需詳細資訊,請參閱 get-operation-detail

如需詳細資訊,請參閱《Amazon Route 53 開發人員指南》中的註冊新網域

如需哪些頂層網域 (TLD) 需要 ExtraParams 的值和有效值的相關資訊,請參閱《Amazon Route 53 API 參考》中的 ExtraParam

  • 如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 RegisterDomain

Java
SDK for Java 2.x
注意

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

public static String requestDomainRegistration(Route53DomainsClient route53DomainsClient, String domainSuggestion, String phoneNumber, String email, String firstName, String lastName, String city) { try { ContactDetail contactDetail = ContactDetail.builder() .contactType(ContactType.COMPANY) .state("LA") .countryCode(CountryCode.IN) .email(email) .firstName(firstName) .lastName(lastName) .city(city) .phoneNumber(phoneNumber) .organizationName("My Org") .addressLine1("My Address") .zipCode("123 123") .build(); RegisterDomainRequest domainRequest = RegisterDomainRequest.builder() .adminContact(contactDetail) .registrantContact(contactDetail) .techContact(contactDetail) .domainName(domainSuggestion) .autoRenew(true) .durationInYears(1) .build(); RegisterDomainResponse response = route53DomainsClient.registerDomain(domainRequest); System.out.println("Registration requested. Operation Id: " + response.operationId()); return response.operationId(); } catch (Route53Exception e) { System.err.println(e.getMessage()); System.exit(1); } return ""; }
  • 如需 API 詳細資訊,請參閱《AWS SDK for Java 2.x API 參考》中的 RegisterDomain

Kotlin
適用於 Kotlin 的 SDK
注意

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

suspend fun requestDomainRegistration( domainSuggestion: String?, phoneNumberVal: String?, emailVal: String?, firstNameVal: String?, lastNameVal: String?, cityVal: String?, ): String? { val contactDetail = ContactDetail { contactType = ContactType.Company state = "LA" countryCode = CountryCode.In email = emailVal firstName = firstNameVal lastName = lastNameVal city = cityVal phoneNumber = phoneNumberVal organizationName = "My Org" addressLine1 = "My Address" zipCode = "123 123" } val domainRequest = RegisterDomainRequest { adminContact = contactDetail registrantContact = contactDetail techContact = contactDetail domainName = domainSuggestion autoRenew = true durationInYears = 1 } Route53DomainsClient.fromEnvironment { region = "us-east-1" }.use { route53DomainsClient -> val response = route53DomainsClient.registerDomain(domainRequest) println("Registration requested. Operation Id: ${response.operationId}") return response.operationId } }
  • 如需 API 詳細資訊,請參閱《適用於 Kotlin 的AWS SDK API 參考》中的 RegisterDomain

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