es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Azure Servicebus – obtener todos los temas disponibles en python

Tengo un Azure Servicebus y quiero recuperar todos los temas que están disponibles basándome en mi cadena de conexión.

En los documentos de Microsoft pude ver que hay una función “GetTopics” para C# – ¿hay algo similar disponible en el SDK de Python? No puedo encontrar nada en el código fuente del azure-sdk-for-python….

CONNECTION_STR = "XXX"
servicebus_client = ServiceBusClient.from_connection_string(conn_str=CONNECTION_STR, logging_enable=True)
servicebus_client.gettopics() # la función no existe en Python

Aclaración: No conozco los nombres de los temas y quiero saber cuáles están disponibles en el ServiceBusClient.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Desafortunadamente, parece que no hay una función similar disponible dentro del SDK de Python para Azure Service Bus. Sin embargo, puede utilizar el método list_topics() de la clase ServiceBusAdministrationClient para recuperar una lista de todos los temas disponibles en su espacio de nombres de Service Bus, de la siguiente manera:

    CONNECTION_STR = "SU_CADENA_DE_CONEXIÓN"
    TOPIC_NAME = "NOMBRE_DEL_TEMA"
    
    servicebus_admin_client = ServiceBusAdministrationClient.from_connection_string(CONNECTION_STR)
    
    # Utilice el método list_topics para recuperar todos los temas en el espacio de nombres
    temas = servicebus_admin_client.list_topics()
    
    # Itere a través de cada tema e imprima su nombre
    for tema in temas:
        print(tema.name)
    

    Esto recuperará una lista de todos los temas disponibles en su espacio de nombres de Service Bus e imprimirá sus nombres.

    Nota: Deberá instalar el paquete azure-servicebus para usar la clase ServiceBusAdministrationClient.

Comments are closed.