Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Veamos como podemos usar dicho nodo. Para ello seguiremos los siguientes pasos:

  1. Seleccionamos la opción "

    FlowEngine Management

    My Digital Flows" del menú:

    Image Modified
  2. Seleccionamos el dominio perteneciente a nuestro usuario:

    Image Modified

  3. Una vez estamos dentro del dominio, arrastramos un nodo de tipo "OnesaitPlatform Rest API invoker" al flujo y hacemos doble click en él para ver sus propiedades.

    • Name: Nombre que mostrará el nodo en el flujo.

    • REST APIs available: Listado de APIs que nuestro usuario tiene disponibles. Una vez seleccionada una API se rellenarán automáticamente los campos "REST API" y "REST API Version".

    • Operations available: Listado de operaciones de la API seleccionada. Una vez seleccionada una operación se rellenarán automáticamente los campos "REST API Operation" y "Operation Method".

    • Timeout: Tiempo en milisegundos que el nodo esperará para obtener respuesta de la operación invocada. En caso de que el tiempo de ejecución sea superior al indicado, se mostrará un error de "Connection timeout".

    • Operation input params: Esta es una lista dinámica que mostrará todos los parámetros (path, query, body, header o multipart) necesarios por la operación que hayamos seleccionado. Hay dos maneras de pasar los valores a dichos parámetros:

      Image Modified

      • msg. : A través del contenido de un campo del mensaje (msg) recibido del nodo predecesor. Por Ejemplo:

        Image Modified

        En este modo, se permite el uso de operadores para acceder a posiciones dentro de un array o un mapa, como podría ser:

        1. Array: msg.payload[0].id

        2. Mapa: msg.pet[garfield].  Nótese en este caso que el literal que actúa como clave del mapa no tiene comillas.

      • String: A través de un valor estático que podremos meter a mano. Por ejemplo:

        Image Modified

        NOTA: En el caso de que uno de los parámetros sea un fichero (multipart/form-data), el valor debe de ir en un campo del mensaje recibido, siguiendo la estructura:

            Image Removed
            
            Image Removed
           
      • Image AddedImage Added

        El buffer es el mismo que devuelve por ejemplo el nodo "File in" 

        Image Modified

        de la paleta de nodos por defecto de Node-RED, por ejemplo:
                

        Image Modified
  4. Una vez terminemos de rellenar los campos requeridos veremos que la cantidad de salidas del nodo varía de una a varias. Cada salida del nodo representará un statusCode que la operación tenga definida. Además se añadirá una salida extra (etiquetada como "???- Other status code") por donde nos llegarán los mensajes con statusCode distinto del resto de salidas. Si colocamos el cursor sobre las patillas de salida, veremos el statusCode y una descripción

    :

    Image ModifiedImage ModifiedImage ModifiedImage Modified

  5. Tras seleccionar nuestra operación a invocar, guardaremos los cambios haciendo click en el botón "deploy":

    Image Modified
  6. En cuanto a la respuesta generada por el nodo, seguirá la siguiente estructura:

    • msg.statusCode: Código de retorno de la operación de la API o del propio nodo invocador en caso de error en la inserción de parámetros.

    • msg.payload: Respuesta (body response) de la operación. Siempre se intentará parsear a objeto. En caso de no ser posible (dependerá de la operación de la API seleccionada) se mantendrá como un String.

    Image Removed
    • Image Added