Actualización de una línea personalizada
Función
Esta API se utiliza para actualizar una línea personalizada.
Método de invocación
Para obtener más información, consulte Invocación a las API.
URI
PUT /v2.1/customlines/{line_id}
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
line_id |
Sí |
String |
ID de línea de resolución |
Parámetros de solicitud
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
X-Auth-Token |
Sí |
String |
Token de usuario. Se puede obtener mediante invocación a una API de IAM. El valor de X-Subject-Token en el encabezado de respuesta es el token de usuario. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
name |
No |
String |
Nombre de línea personalizado |
ip_segments |
No |
Array of strings |
Rango de direcciones IP. La dirección IP inicial se separa de la dirección IP final con un guion (-). Los intervalos de direcciones IP no se pueden solapar. Si las direcciones IP inicial y final son las mismas, solo hay una dirección IP en el intervalo. Establezca el valor en IP1-IP1. Actualmente, solo se admiten direcciones IPv4. |
description |
No |
String |
Descripción de línea personalizada. Se permite un máximo de 255 caracteres. |
Parámetros de respuesta
Código de estado: 200
Parámetro |
Tipo |
Descripción |
---|---|---|
line_id |
String |
ID de línea de resolución |
name |
String |
Nombre de línea personalizado |
ip_segments |
Array of strings |
Rango de direcciones IP |
created_at |
String |
Hora en que se creó la línea personalizada |
updated_at |
String |
Hora en que se actualizó la línea personalizada |
status |
String |
Estado del recurso |
description |
String |
Línea personalizada |
Ejemplo de las solicitudes
Modificación del nombre y la descripción de una línea personalizada y establecer el rango de direcciones IP en 1.1.1.1-1.1.1.1 y 1.1.1.2-1.1.1.3
PUT https://{endpoint}/v2.1/customlines/{line_id} { "name" : "customline", "ip_segments" : [ "1.1.1.1-1.1.1.1", "1.1.1.2-1.1.1.3" ], "description" : "1234" }
Ejemplo de respuestas
Código de estado: 200
Respuesta a la solicitud de actualización de una línea personalizada
{ "line_id" : "custom_2ce45ef669fc87870169fcbada7a0007", "name" : "customline", "ip_segments" : [ "1.1.1.1-1.1.1.1", "1.1.1.2-1.1.1.3" ], "status" : "PENDING_UPDATE", "created_at" : "2019-04-10T12:03:17.827", "updated_at" : "2019-04-10T12:03:17.827", "description" : "1234" }
Código de muestra del SDK
El código de ejemplo del SDK es el siguiente.
Java
Modificación del nombre y la descripción de una línea personalizada y establecer el rango de direcciones IP en 1.1.1.1-1.1.1.1 y 1.1.1.2-1.1.1.3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.dns.v2.region.DnsRegion; import com.huaweicloud.sdk.dns.v2.*; import com.huaweicloud.sdk.dns.v2.model.*; import java.util.List; import java.util.ArrayList; public class UpdateCustomLineSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); DnsClient client = DnsClient.newBuilder() .withCredential(auth) .withRegion(DnsRegion.valueOf("cn-north-4")) .build(); UpdateCustomLineRequest request = new UpdateCustomLineRequest(); UpdateCustomsLineReq body = new UpdateCustomsLineReq(); List<String> listbodyIpSegments = new ArrayList<>(); listbodyIpSegments.add("1.1.1.1-1.1.1.1"); listbodyIpSegments.add("1.1.1.2-1.1.1.3"); body.withDescription("1234"); body.withIpSegments(listbodyIpSegments); body.withName("customline"); request.withBody(body); try { UpdateCustomLineResponse response = client.updateCustomLine(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } } |
Python
Modificación del nombre y la descripción de una línea personalizada y establecer el rango de direcciones IP en 1.1.1.1-1.1.1.1 y 1.1.1.2-1.1.1.3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkdns.v2.region.dns_region import DnsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkdns.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = DnsClient.new_builder() \ .with_credentials(credentials) \ .with_region(DnsRegion.value_of("cn-north-4")) \ .build() try: request = UpdateCustomLineRequest() listIpSegmentsbody = [ "1.1.1.1-1.1.1.1", "1.1.1.2-1.1.1.3" ] request.body = UpdateCustomsLineReq( description="1234", ip_segments=listIpSegmentsbody, name="customline" ) response = client.update_custom_line(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
Go
Modificación del nombre y la descripción de una línea personalizada y establecer el rango de direcciones IP en 1.1.1.1-1.1.1.1 y 1.1.1.2-1.1.1.3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" dns "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := dns.NewDnsClient( dns.DnsClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.UpdateCustomLineRequest{} var listIpSegmentsbody = []string{ "1.1.1.1-1.1.1.1", "1.1.1.2-1.1.1.3", } descriptionUpdateCustomsLineReq:= "1234" nameUpdateCustomsLineReq:= "customline" request.Body = &model.UpdateCustomsLineReq{ Description: &descriptionUpdateCustomsLineReq, IpSegments: &listIpSegmentsbody, Name: &nameUpdateCustomsLineReq, } response, err := client.UpdateCustomLine(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
Más información
Para obtener un código de ejemplo del SDK de más lenguajes de programación, consulta la pestaña Código de ejemplo en Explorador de API. El código de ejemplo del SDK se puede generar automáticamente.
Códigos de estado
Código de estado |
Descripción |
---|---|
200 |
Respuesta a la solicitud de actualización de una línea personalizada |
Códigos de error
Consulte Códigos de error.