Todos los productos
Search
Centro de documentos

Alibaba Cloud SDK:Preguntas frecuentes sobre el SDK para Python

Última actualización: Sep 05, 2026

Este tema proporciona respuestas a algunas preguntas frecuentes sobre el SDK de Alibaba Cloud para Python. Su objetivo es ayudarle a mejorar la eficiencia de desarrollo.

Requisitos previos

  • Tener instalado Python 3.7 o una versión posterior.

  • Poder acceder a las API de Alibaba Cloud desde su red.

Descripción general

Problemas y soluciones

¿Cómo gestiono los errores de AccessKey?

Problema: tras ejecutar el código, se devuelve el siguiente mensaje de error. Este indica que el par de AccessKey no está configurado correctamente.

  • Alibaba Cloud SDK V2.0: AttributeError: 'NoneType' object has no attribute 'get_access_key_id'.

  • Alibaba Cloud SDK V1.0: Error:MissingParameter The input parameter "AccessKeyId" that is mandatory for processing this request is not supplied.

Soluciones:

  1. Ejecute los siguientes comandos para comprobar si las variables de entorno ALIBABA_CLOUD_ACCESS_KEY_ID y ALIBABA_CLOUD_ACCESS_KEY_SECRET están configuradas.

    Linux/macOS

    echo $ALIBABA_CLOUD_ACCESS_KEY_ID
    echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

    Windows

    echo %ALIBABA_CLOUD_ACCESS_KEY_ID%
    echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%

    Si se devuelve un par de AccessKey válido, las variables de entorno están bien configuradas. Si no se devuelve ningún par o este no es válido, configure las variables de entorno según corresponda. Para obtener más información, consulte Configure environment variables in Linux, macOS, and Windows.

  2. Revise el código en busca de errores relacionados con el par de AccessKey.

    Ejemplo de solicitud con errores:

     config = open_api_models.Config(
                access_key_id=os.environ['yourAccessKeyID'],
                access_key_secret=os.environ['yourAccessKeySecret']
            )

    Ejemplo de solicitud exitosa:

     config = open_api_models.Config(
               access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
               access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
            )
    Nota

    Las expresiones os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'] y os.environ("ALIBABA_CLOUD_ACCESS_KEY_SECRET") indican que el ID de AccessKey y el secreto de AccessKey se obtienen de las variables de entorno ALIBABA_CLOUD_ACCESS_KEY_ID y ALIBABA_CLOUD_ACCESS_KEY_SECRET.

    Importante

    Para evitar riesgos de seguridad, no escriba el par de AccessKey directamente en el código de producción.

¿Qué hago si falla la instalación del SDK?

  • Asegúrese de tener instalada una versión válida de Python, como Python 3.x.

  • Incluya la opción --upgrade al instalar el SDK mediante un comando de pip. Así garantiza que se instale la versión más reciente.

pip install --upgrade <SDK_NAME>  
  • Si encuentra problemas de permisos durante la instalación, por ejemplo, al instalar el SDK en el directorio del sistema de las bibliotecas de Python, utilice la opción --user para instalarlo en el directorio del usuario en lugar del directorio del sistema.

pip install --user <SDK_NAME>  
  • Si tiene varias versiones de Python instaladas en la PC, asegúrese de instalar el SDK en la versión que utiliza. Por ejemplo, use python3 en lugar de python en el código y ejecute comandos pip3.

¿Qué hago si falla la importación de un módulo y se reporta el error ModuleNotFoundError?

Compruebe que el SDK esté instalado correctamente. Después, intente importar un módulo en el entorno de Python.

  • Inicie el intérprete de Python.

python
  • Importe un módulo.

import <SDK_NAME> 

Si no ocurre ningún error, el SDK está instalado correctamente. Si aparece el error ModuleNotFoundError o ImportError, significa que la instalación no se completó de forma adecuada.

pip install <SDK_NAME>

¿Qué hago si se devuelve el mensaje de error "AttributeError: 'CredentialModel' object has no attribute 'provider_name'"?

Este mensaje indica que se intentó acceder al atributo provider_name del objeto CredentialModel, pero dicho atributo no existe. En la mayoría de los casos, el error se debe a que el paquete alibabacloud_credentials está desactualizado, lo que genera incompatibilidad entre la biblioteca de clases y las operaciones de la API de compilación. Posibles causas:

  • Paquete de dependencia desactualizado: la versión del paquete alibabacloud_credentials es anterior a la que requiere el atributo provider_name en el código.

  • Conflictos de dependencias: se carga una versión incorrecta de alibabacloud_credentials porque existen varios paquetes alibabacloud_credentials en el proyecto.

  • Actualización de dependencia incorrecta: después de actualizar, no se reinstaló la dependencia ni se borró la caché. Como resultado, se sigue usando la versión anterior.

Soluciones:

  1. En el archivo requirements.txt, establezca el paquete de dependencia alibabacloud_credentials en la versión más reciente. Ejemplo:

    alibabacloud_credentials=1.0.1

    Ejecute el comando pip install -r requirements.txt --upgrade para actualizar el paquete de dependencia.

    Nota

    Consulte ChangeLog.txt para ver la lista de todas las versiones publicadas de alibabacloud_credentials.

  2. Compruebe si hay conflictos de dependencias.

    pip list | grep alibabacloud
    # If multiple dependency versions exist, uninstall the existing versions and install the latest version. Example: 
    pip uninstall alibabacloud_credentials
    pip install alibabacloud_credentials==1.0.1
    
  3. Borre la caché y reinstale la versión más reciente.

    pip cache purge
    pip install -r requirements.txt --force-reinstall
    

¿Qué hago si se devuelve el siguiente mensaje de error: code: 400, The input parameter"AccesskeyId" that is mandatory for processing this request is not supplied?

  • Este mensaje se devuelve porque una solicitud enviada a la puerta de enlace no contiene un ID de AccessKey.

  • Compruebe si el ID de AccessKey está bien configurado cuando utilice el código de ejemplo completo descargado de OpenAPI Explorer. Configure su ID de AccessKey y su secreto de AccessKey al llamar al método principal.

En la pestaña SDK Sample de OpenAPI Explorer, busque accessKeyId y accessKeySecret dentro del método main y reemplace los valores de marcador de posición con su AccessKey.

¿Qué hago si se devuelve el siguiente mensaje de error: Tea.exceptions.TeaException: Error: SignatureDoesNotMatch.MissingHeader code: 400, The specified signed header "accept;connection;content-type;host;user-agent;x-acs-action;x-acs-content-sha256;x-acs-date;x-acs-signature-nonce;x-acs-version" is not found?

Este mensaje se devuelve porque el encabezado Connection se establece en close para implementar conexiones de corta duración al llamar a un servicio en modo autofirmado. Sin embargo, el método de firma V3 no es compatible con esta configuración, lo que provoca el error.

Para corregirlo, aplique la siguiente configuración: config.signature_algorithm = 'v2'.

¿Qué hago si se devuelve el siguiente mensaje de error: Tea.exceptions.TeaException: Connection aborted?

Este mensaje se devuelve porque el intervalo entre solicitudes supera el tiempo esperado. El servidor mantiene una conexión persistente solo durante 30 segundos, mientras que el cliente intenta mantenerla abierta de forma indefinida. En este caso, el servidor cierra la conexión después de 30 segundos. Si el cliente envía una solicitud pasado ese tiempo, la solicitud falla.

  • Establezca el encabezado Connection en close para usar conexiones de corta duración.

  • Configure un mecanismo de reintento para garantizar que la llamada se inicie dentro de los 30 segundos.

Importante

Un mecanismo de reintento puede provocar operaciones duplicadas si una solicitud se envía y procesa varias veces. Por lo tanto, se recomienda configurar reintentos únicamente para las solicitudes de consulta, y no para las de creación, eliminación o modificación.

¿Qué hago si se agota el tiempo de espera de una llamada a la API y se devuelve el error "requests.exceptions.Timeout" o "requests.exceptions.ConnectionError"?

El agotamiento del tiempo de espera en una llamada a la API puede deberse a varios factores. A continuación se describen las causas más comunes y sus respectivas soluciones.

Problemas de conexión de red

Causa: la solicitud no llega al servidor porque la conexión de red entre el cliente y el servidor falla o la red es inestable.

Soluciones:

Ejecute el comando ping o curl para probar la conectividad entre el host local y el endpoint del servicio en la nube. Por ejemplo, ejecute el comando ping dysmsapi.aliyuncs.com o curl -v https://dysmsapi.aliyuncs.com para probar la conectividad entre su host local y el endpoint de la API de Short Message Service (SMS).

  • Si el comando agota el tiempo de espera o no recibe respuesta, revise las directivas de bloqueo en su firewall local o en los enrutadores.

  • Si se recibe respuesta, se recomienda especificar un tiempo de espera adecuado para evitar fallos causados por configuraciones incorrectas. Para obtener más información, consulte Configure a timeout period. Código de ejemplo:

  • # The timeout period takes effect only for requests that use RuntimeOptions.
    runtimeOptions = RuntimeOptions(
        connect_timeout=5000  # Configure the timeout period for connection requests. Unit: milliseconds.
    )
Causa 2: tiempo prolongado de procesamiento de la solicitud

Causa: el tiempo de procesamiento de la solicitud a la API supera el tiempo de espera de lectura especificado.

Solución: aumente el tiempo de espera para la respuesta de la API. Para obtener más información, consulte Configure a timeout period. Por ejemplo, configure el parámetro de tiempo de espera de lectura para ampliar dicho periodo. Código de ejemplo:

# The timeout period takes effect only for requests that use RuntimeOptions.
runtimeOptions = RuntimeOptions(
    read_timeout=10000,  # Configure the timeout period for read requests. Unit: milliseconds.
)

¿Qué hago si en Linux se devuelve el mensaje de error "-bash: python3: command not found"?

Si ya instaló Python, este mensaje puede deberse a que los enlaces simbólicos no están configurados correctamente.

Nota

Cuando un usuario accede a un enlace simbólico, en realidad accede al archivo al que apunta dicho enlace. Por ejemplo, al usar Python 3, se está utilizando el intérprete de Python 3.12.

  • Ejecute el comando which python3 pip3 para comprobar si existen enlaces simbólicos en el sistema. Si existen, elimínelos.

rm -rf /usr/bin/python3 /usr/bin/pip3
  • Vuelva a crear los enlaces simbólicos. Busque el directorio de instalación de Python, acceda al directorio bin y localice pip3.12 y python3.12. Ejecute los siguientes comandos para crear los enlaces simbólicos:

sudo ln -s /usr/local/python3/bin/python3.12 /usr/bin/python3
sudo ln -s /usr/local/python3/bin/pip3.12 /usr/bin/pip3

¿Qué hago si al llamar a una operación de la API se reporta el error "Invalid parameters" o "MissingRequiredParameter"?

En este ejemplo se utiliza la operación SendSms de Short Message Service (SMS).

  • Vaya a la página API Debugging en OpenAPI Explorer y seleccione el producto en la nube y la API.

  • Compruebe que todos los parámetros obligatorios, como PhoneNumbers y SignName, estén especificados en el objeto de solicitud construido. En este ejemplo se usa el objeto SendSmsRequest.

  • Verifique que todos los parámetros obligatorios estén especificados según la referencia de la API.

  • Asegúrese de que los valores de los parámetros obligatorios sean válidos. Por ejemplo, compruebe que los números de celular tengan formatos válidos.

  • Antes de enviar una solicitud a la API, el SDK verifica automáticamente los parámetros. Si falta uno o más parámetros obligatorios, se reporta un error como MissingRequiredParameter. Por ejemplo, si no se especifica el parámetro PhoneNumbers, se devuelve el error "MissingPhoneNumbers: code: 400". En ese caso, especifique el parámetro siguiendo las indicaciones del mensaje de error.

Si llama a la API sin el parámetro de número de celular, la consola devolverá el error MissingPhoneNumbers: code: 400.

send_sms_request = dysmsapi_20170525_models.SendSmsRequest(
            # The mobile numbers to which you want to send a text message.
            phone_numbers='<YOUR_VALUE>',
            # The name of the SMS signature.
            sign_name='<YOUR_VALUE>',
            # The code of the SMS template.
            template_code='<YOUR_VALUE>',
            # The variables of the SMS template. Specify the value in the JSON format. Example: {"code":"1234","name":"1234","time":"1234"}.
            template_param='{"code":"1234","name":"1234","time":"1234"}'
        )

¿Qué hago si falla la llamada a una operación de la API y se reporta el error "Tea.exceptions.UnretryableException"?

Asegúrese de que la región seleccionada sea compatible con el servicio al que llama. Si toma SMS como ejemplo, encontrará los endpoints del servicio en su página de producto dentro de OpenAPI Explorer. Utilice el endpoint correcto para su región.

Haga clic en la pestaña Service Area List en la página principal del producto. Use las columnas Region ID y Service Address para encontrar el endpoint correcto de cada región. Por ejemplo, el endpoint de SMS para las regiones de China continental es dysmsapi.aliyuncs.com.

¿Qué hago si se devuelve el siguiente mensaje de error: File "/usr/local/python3/lib/python3.6/site-packages/alibabacloud_slb20140515/client.py", line 4, in <module> from Tea.core import TeaCore ModuleNotFoundError: No module named 'Tea'?

Este mensaje se devuelve porque la versión de pip está desactualizada. Cuando esto ocurre, las dependencias instaladas quedan incompletas o se eliminan ciertas dependencias específicas. Para corregirlo, actualice pip y ejecute el comando pip install <Installation package>. Por ejemplo, ejecute el comando pip install alibabacloud-tea para instalar el módulo Tea.

Importante

Cuando ocurre este error, el sistema podría ejecutar el comando pip install tea e instalar un paquete no relacionado. Consulte la organización o persona que publica el paquete en el repositorio Python Package Index (PyPI) y evalúe si conviene eliminarlo.

Pregunta 13: ¿Qué hago si se devuelve el siguiente mensaje de error: Command "python setup.py egg_info" failed with error code 1 in xxx?

Este mensaje se devuelve porque la versión de Python o de pip está desactualizada, o porque faltan bibliotecas o paquetes necesarios. Como consecuencia, el SDK no funciona como se espera.

Solución
  1. Compruebe la versión actual de Python.

    Ejecute el comando python -V o python3 -V para comprobar la versión actual de Python. Si es anterior a la 3.7, siga estos pasos para actualizar Python. Visite el sitio web oficial de Python para obtener la URL de descarga de la versión más reciente y las instrucciones de instalación.

    Actualizar Python

    1. Instale las herramientas y bibliotecas que requiere Python.

      sudo yum groupinstall "Development Tools" -y
      sudo yum install openssl-devel bzip2-devel libffi-devel -y
    2. Descargue la versión de Python necesaria desde el sitio web oficial. En este ejemplo se usa Python 3.7.12.

      sudo curl -O https://www.python.org/ftp/python/3.7.12/Python-3.7.12.tgz
    3. Descomprima el paquete de instalación.

      sudo tar xzf Python-3.7.12.tgz
    4. Compile e instale Python.

      cd Python-3.7.12
      sudo ./configure --enable-optimizations
      sudo make altinstall
    5. Verifique la versión de Python.

      python3.7 --version
    6. Ejecute los siguientes comandos para actualizar pip en la nueva versión de Python:

      python3.7 -m ensurepip
      python3.7 -m pip install --upgrade pip
  2. Si la versión de Python es 3.7 o posterior, es probable que la versión de pip esté desactualizada. Ejecute el comando pip3 install --upgrade pip setuptools para actualizar pip a la versión más reciente. Luego, intente ejecutar el código de Python de nuevo.

  3. Compruebe e instale las bibliotecas necesarias.

    Si la versión de Python es 3.7 o posterior y el problema persiste después de actualizar pip, es posible que falten bibliotecas relacionadas. En algunos casos, si no se instalan ciertas bibliotecas, otras tampoco podrán instalarse. Por ejemplo, para instalar numpy, debe instalar bibliotecas matemáticas como blas y lapack. Para instalar lxml, necesita libxml2-dev y libxslt1-dev.

    Ejecute los siguientes comandos para instalar bibliotecas comunes. En este ejemplo se usan lxml y numpy.

    sudo yum install libxml2-dev libxslt1-dev -y 
    sudo yum install blas-devel lapack-devel -y
    Nota

    Los paquetes de Python son módulos o bibliotecas diseñados para ampliar y mejorar sus capacidades. Proporcionan herramientas y métodos adicionales que ayudan a los desarrolladores a completar tareas específicas de manera práctica y eficiente. Los paquetes necesarios dependen de los requisitos del proyecto que esté desarrollando.

Pregunta 14: ¿Qué hago si se devuelve el siguiente mensaje de error: "HTTPSConnectionPool(host='ocr-api.cn-hangzhou.aliyuncs.com', port=443): Max retries exceeded with url: /?Country=Vietnam (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:2418)')))"?

En la mayoría de los casos, este error se debe a fallos en el protocolo de enlace SSL/TLS. Posibles causas:

  • Las versiones de SSL/TLS del servidor y del cliente no son compatibles entre sí.

  • El certificado SSL del dispositivo local presenta errores. Por ejemplo, el certificado SSL caducó o la cadena de certificados está incompleta.

  • Los protocolos de enlace SSL fallan debido a errores en la configuración de red.

Soluciones:
  1. Compruebe las versiones de SSL/TLS: asegúrese de que el entorno de Python en el dispositivo local admita la versión de SSL/TLS que el servidor usa para comunicarse. En algunos casos, el servidor solo admite TLS 1.2.

    import ssl
    import urllib3
    # Create an SSL context that uses TLS 1.2.
    ssl_context = ssl.create_urllib3_context(ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv3, ssl.OP_NO_TLSv1, ssl.OP_NO_TLSv1_1)
    # Initialize the urllib3 pool manager.
    http = urllib3.PoolManager(context=ssl_context)
    # Send the request.
    response = http.request('GET', 'https://ocr-api.cn-hangzhou.aliyuncs.com/?Country=Vietnam')
              
  2. Revise posibles problemas en el entorno de Python:

    1. Asegúrese de que el módulo ssl y la versión de la biblioteca urllib3 sean compatibles con la versión de Python.

    2. Utilice un entorno virtual para reinstalar Python y sus dependencias.

    python -m venv myenv
    source myenv/bin/activate
    pip install requests urllib3 pyOpenSSL
  3. Compruebe si hay errores en la configuración de red.

    1. Asegúrese de que el firewall del dispositivo local permita el tráfico hacia el puerto HTTPS (puerto 443).

    2. Si utiliza un servidor proxy, asegúrese de que esté configurado correctamente.

    import requests
    # Use a proxy
    proxies = {
        'http': 'http://your-proxy-server:port',
        'https': 'https://your-proxy-server:port'
    }
    response = requests.get(
        'https://ocr-api.cn-hangzhou.aliyuncs.com/?Country=Vietnam',
        proxies=proxies
    )
  4. Actualice las bibliotecas requests y urllib3 para resolver el problema.

    pip install --upgrade requests urllib3
  5. Si el problema persiste después de la actualización, es posible que se deba al certificado del entorno. Configure los siguientes parámetros para omitir el certificado y ajustar el tiempo de espera:

    # Ignore certificate verification.
    runtimeOptions = RuntimeOptions(
     ignore_ssl=True # Ignores SSL certificate verification. Verification is enabled by default.
    )
    # Adjust the timeout.
    runtimeOptions = RuntimeOptions(
        read_timeout=xxx,  # Read timeout in milliseconds (ms)
        connect_timeout=xxx  # Connection timeout in milliseconds (ms)
    )
  6. Si el problema continúa tras deshabilitar la verificación del certificado SSL, establezca la variable de entorno PYTHONHTTPSVERIFY en 0 para deshabilitarla por completo.

    export PYTHONHTTPSVERIFY=0  # Disable HTTPS verification.
  7. Revise el certificado SSL de la máquina local: asegúrese de que esté actualizado y completo. Puede usar una herramienta como certbot para actualizar e instalar certificados.

    sudo certbot certonly --standalone --rsa-key-size 4096 --agree-tos --email yo**@email.com

Errores básicos de Python

Mensaje de error

Causa

Solución

SyntaxError

El código contiene un error de sintaxis, como un error ortográfico, dos puntos faltantes o paréntesis sin cerrar.

Revise el código y asegúrese de que la sintaxis sea válida. Utilice la función de resaltado de sintaxis de un entorno de desarrollo integrado (IDE) o de un editor para detectar estos errores.

NameError

La variable o función que se intenta usar no está definida.

Compruebe que el nombre de la variable o función sea correcto y que esté definida o importada adecuadamente en el código.

TypeError

La operación o función no es compatible con el tipo del objeto al que se aplica.

Revise los tipos de datos en el código y asegúrese de que la operación o función sea aplicable al tipo de objeto correspondiente. También puede usar funciones de conversión de tipos para resolver la incompatibilidad.

IndexError

El índice especificado no existe en la lista, tupla o cadena.

Asegúrese de que el índice esté dentro del rango válido del objeto. Puede usar instrucciones condicionales o manejo de excepciones para validar el índice, o bien funciones integradas como len().

ValueError

Un valor de parámetro en la función no es válido.

Verifique que los valores de los parámetros especificados en la función cumplan con los requisitos correspondientes. Puede usar instrucciones condicionales o manejo de excepciones para validar dichos valores.

FileNotFoundError

El archivo que se intenta abrir o al que se intenta acceder no existe.

Compruebe que la ruta del archivo especificada sea correcta y verifique si el archivo existe. Puede usar instrucciones condicionales o manejo de excepciones para gestionar los casos en los que el archivo no exista.

ZeroDivisionError

El divisor es cero.

Antes de ejecutar una división, asegúrese de que el divisor no sea cero. Puede usar instrucciones condicionales o manejo de excepciones para comprobar el valor del divisor y garantizar que no sea cero.

FloatingPointError

Un cálculo de punto flotante produce un resultado infinito o que no es un número (NaN).

Asegúrese de que los valores involucrados en el cálculo de punto flotante estén dentro del rango válido. Puede usar funciones de validación de valores para verificarlos y tomar las medidas adecuadas si ocurren excepciones.

OverflowError

Un cálculo numérico produce un resultado que excede el rango de valores del tipo de datos actual.

Revise el tipo de datos utilizado en el cálculo numérico y asegúrese de que pueda representar el rango del resultado. Si necesita manejar valores numéricos grandes, utilice tipos de datos adecuados o bibliotecas de terceros.

BufferError

Los datos que se intentan leer o escribir superan el tamaño del búfer. El búfer al que se intenta acceder no existe. La operación sobre el búfer provoca un error de memoria insuficiente o de límites excedidos.

Compruebe el tamaño del búfer y asegúrese de que la cantidad de datos que se leen o escriben no lo supere. Puede usar instrucciones condicionales o manejo de excepciones para validar la cantidad de datos y actuar en consecuencia si excede el tamaño del búfer.

EOFError

Se leyó un archivo vacío o se alcanzó el final de un archivo.

Revise el contenido del archivo y asegúrese de que contenga datos legibles. Si el archivo está vacío o se alcanza el final, se lanza una excepción EOFError. Puede usar instrucciones condicionales o manejo de excepciones para verificar el contenido del archivo y actuar cuando esté vacío o se alcance el final.

Errores del SDK de Python

Mensaje de error

Causa

Solución

aliyunsdkcore.acs_exception.exceptions.ClientException: SDK.InvalidParameter The parameter region_id not match with ^[a-zA-Z0-9_-]+$

El formato del parámetro region_id para la inicialización del cliente no es válido.

Introduzca una cadena con el formato cn-<Región>.

SDK.InvalidRegionId

El paquete principal de una versión anterior no logra identificar el endpoint.

Actualice el paquete aliyun-python-sdk-core a la versión más reciente y especifique un ID de región válido.

SDK.ServerUnreachable

Ocurrió un error de red.

En la versión más reciente del SDK, este error se reemplaza por uno más específico, como SDK.HttpError.

Actualice el paquete aliyun-python-sdk-core a la versión más reciente.

SDK.MissingEndpointsFiler

No se configuró ningún filtro de endpoints.

Configure un filtro de endpoints y asegúrese de que funcione correctamente.

SDK.UnknownServerError

Ocurrió un error desconocido en el servidor.

Vuelva a enviar la solicitud.

SDK.InvalidSessionExpiration

El tiempo de expiración de la sesión no es válido.

Compruebe el tiempo de expiración de la sesión y asegúrese de que sea válido. Si la sesión caduca, deberá actualizarla u obtener una credencial de sesión nueva.

SDK.NotSupport

La función no es compatible.

Asegúrese de que la versión del SDK que utiliza admita las funciones requeridas.

SDK.EndpointResolvingError

Ocurrió un error al resolver el endpoint.

Revise la lógica de resolución de endpoints y asegúrese de que los endpoints válidos se resuelvan y obtengan correctamente.

SDK.InvalidServerResponse

La respuesta devuelta por el servidor no es válida.

Revise el contenido de la respuesta del servidor y asegúrese de que cumpla con los requisitos de los servicios de Alibaba Cloud. Puede consultar el contenido de la respuesta para obtener más información y ajustarlo según sus necesidades de negocio.

RequiredArgumentException

Faltan uno o más parámetros obligatorios.

Revise los parámetros obligatorios y asegúrese de que sus valores sean válidos.

UnretryableException

Ocurrió un error de red.

1. Compruebe si el endpoint especificado es válido.

2. Ejecute el comando ping o curl para verificar la conectividad de red.

Soporte técnico

Las soluciones a los problemas anteriores le ayudarán a aprovechar mejor los SDK de Alibaba Cloud. Si encuentra otros inconvenientes al utilizarlos, comuníquese con el soporte técnico de Alibaba Cloud mediante el siguiente método: