Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ Domain Name Service/ Referência de API/ Exemplos/ Exemplo 1: criação de uma zona pública
Atualizado em 2023-04-24 GMT+08:00

Exemplo 1: criação de uma zona pública

Cenários

Depois de registrar um nome de domínio e configurar um site, crie uma zona pública e configure registros para apontar o nome de domínio para o endereço IP do servidor Web onde o site é implantado, para que os visitantes possam usar o nome de domínio para acessar seu site pela Internet.

Esta seção descreve como criar uma zona pública chamando a API em Criação de uma zona pública e como criar um conjunto de registros chamando a API em Criação de um conjunto de registros. Para obter detalhes sobre como chamar as APIs, consulte Chamada das API.

O token obtido do IAM é válido por apenas 24 horas. Se quiser usar um token para autenticação, você pode armazená-lo em cache para evitar chamar frequentemente a API do IAM.

Pré-requisitos

  • Você registrou o nome de domínio example.com com um registrador de terceiros.
  • Você implantou um servidor web e obteve seu endereço IP.

APIs envolvidas

Você precisa obter um token e adicionar X-Auth-Token ao cabeçalho da solicitação de chamadas de API.

  • API do IAM para obtenção de um token
  • API do DNS para criar uma zona pública
  • API do DNS para criar um conjunto de registros

Procedimento

  1. Obtenha o token referindo-se a Autenticação.
  2. Adicione Content-Type e X-Auth-Token no cabeçalho da solicitação.
  3. Especifique os seguintes parâmetros no corpo da solicitação:
    {
        "name": "example.com.",  // Zone name (mandatory, string)
        "description": "This is an example zone.", // Description of the zone (optional, string)
         "zone_type": "public", // Zone type (optional)
         "email": "xx@example.org" // Email address of the domain name administrator (optional, string)
        "ttl": 300, // Default caching duration of the SOA record (optional, string)
    }
  4. Envie uma solicitação POST https://DNS endpoint/v2/zones.
  5. Verifique a resposta da solicitação.
    • O resultado da solicitação pode ser bem-sucedido ou falhou na resposta.
    • Se a solicitação falhar, um código de erro e informações de erro serão retornados. Para mais detalhes, consulte Código de erro.
    • Para obter detalhes sobre os parâmetros na resposta, consulte Criação de uma zona pública.
    • Para obter detalhes sobre códigos de retorno gerais na resposta, consulte Código de status.

    Veja a seguir um exemplo de resposta de uma solicitação bem-sucedida:

    STATUS CODE 200
    {
        "id": "2c9eb155587194ec01587224c9f90149",
        "name": "example.com.",
        "description": "This is an example zone.",
        "email": "xx@example.com",
        "ttl": 300,
        "serial": 1,
        "masters": [],
        "status": "PENDING_CREATE",
        "links": {
            "self": "https://Endpoint/v2/zones/2c9eb155587194ec01587224c9f90149"
        },
        "pool_id": "00000000570e54ee01570e9939b20019",
        "project_id": "e55c6f3dc4e34c9f86353b664ae0e70c",
        "zone_type": "public",
        "created_at": "2016-11-17T11:56:03.439",
        "updated_at": null,
        "record_num": 0
    }
    
  6. Adicione Content-Type e X-Auth-Token no cabeçalho da solicitação.
  7. Especifique os seguintes parâmetros no corpo da solicitação:
    {
        "name": "example.com.",  // Zone name (mandatory, string)
        "description": "This is an example record set.", // Description of the record set (optional, string)
         "type": "A", // Record set type (mandatory, string)
        "ttl": 3600, // Caching duration of the record set (optional, integer)
        "records": [ 
            "192.168.10.1", 
            "192.168.10.2"
         ] // Values of the record set (mandatory, list<string>)
    }
  8. Envie uma solicitação POST https://DNS endpoint/v2/zones/{zone_id}/recordsets, onde zone_id é o ID da zona à qual o conjunto de registros será adicionado.
  9. Verifique a resposta da solicitação.
    STATUS CODE 200
    {
        "id": "2c9eb155587228570158722b6ac30007",
        "name": "example.com.",
        "description": "This is an example record set.",
        "type": "A",
        "ttl": 300,
        "records": [
            "192.168.10.1",
            "192.168.10.2"
        ],
        "status": "PENDING_CREATE",
        "links": {
            "self": "https://Endpoint/v2/zones/2c9eb155587194ec01587224c9f90149/recordsets/2c9eb155587228570158722b6ac30007"
        },
        "zone_id": "ff8080825b8fc86c015b94bc6f8712c3",
        "zone_name": "example.com.",
        "create_at": "2017-04-22T08:17:08.997",
        "update_at": null,
        "default": false,
        "project_id": "e55c6f3dc4e34c9f86353b664ae0e70c"
    }