Procesamiento de entradas y salidas en Step Functions - AWS Step Functions

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Procesamiento de entradas y salidas en Step Functions

Administrar el estado con variables y JSONata

Step Functions agregó recientemente variables y JSONata para administrar el estado y transformar los datos.

Obtenga más información en la entrada del blog Simplificar la experiencia del desarrollador con variables y JSONata en AWS Step Functions

Cuando una ejecución de Step Functions recibe una JSON entrada, pasa esos datos al primer estado del flujo de trabajo como entrada.

ConJSONata, puede recuperar la entrada de estado desde$states.input. Las ejecuciones de su máquina de estados también proporcionan esos datos de entrada iniciales en elObjeto Context (Contexto). Puede recuperar la entrada original de la máquina de estado en cualquier punto de su flujo de trabajo desde$states.context.Execution.Input.

Cuando los estados salen, su salida está disponible para el siguiente estado de la máquina de estados. Las entradas de estado pasarán por defecto como salida de estado, a menos que modifique la salida de estado. Para los datos que pueda necesitar en pasos posteriores, considere la posibilidad de almacenarlos en variables. Para obtener más información, consulte Pasar datos entre estados con variables.

QueryLanguage recomendación

Para las nuevas máquinas de estado, recomendamos el lenguaje de JSONata consulta. En las máquinas de estados que no especifican un idioma de consulta, el valor predeterminado de la máquina de estados es JSONPath para garantizar la compatibilidad con versiones anteriores. Debe optar por utilizarla JSONata para sus máquinas de estados o estados individuales.

Procesando entradas y salidas con JSONata

Con JSONata las expresiones, puede seleccionar y transformar datos. En el Arguments campo, puede personalizar los datos que se envían a la acción. El resultado se puede transformar en una salida de estado personalizada en el Output campo. También puede almacenar datos en variables del Assign campo. Para obtener más información, consulte Transformar datos con JSONata.

El siguiente diagrama muestra cómo se mueve JSON la información a través del estado de una JSONata tarea.

Procesar la entrada y la salida con JSONPath

Administrar el estado y transformar los datos

Step Functions agregó recientemente variables y JSONata para administrar el estado y transformar los datos.

Obtenga información sobre cómo pasar datos con variables y cómo transformar datos con JSONata.

Para las máquinas de estados que las utilizanJSONPath, los siguientes campos controlan el flujo de datos de un estado a InputPath otro:Parameters,ResultSelector,ResultPath, yOutputPath. Cada JSONPath campo se puede manipular a JSON medida que se mueve por cada estado del flujo de trabajo.

JSONPathlos campos pueden usar rutas para seleccionar partes JSON de la entrada o del resultado. Una ruta es una cadena, que comienza por$, que identifica los nodos dentro del JSON texto. Las rutas de Step Functions utilizan JsonPathla sintaxis.

El siguiente diagrama muestra cómo se mueve JSON la información a través del estado de una JSONPath tarea. InputPathSelecciona las partes de la JSON entrada para pasarlas a la tarea del Task estado (por ejemplo, una AWS Lambda función). Puede ajustar los datos que se envían a su acción en el Parameters campo. Luego, conResultSelector, puedes seleccionar partes del resultado de la acción para transferirlas. ResultPathluego selecciona la combinación de entrada de estado y resultados de la tarea para pasarlos a la salida. OutputPathpuede filtrar la JSON salida para limitar aún más la información que se pasa a la salida.

Orden de los filtros: InputPath, Parámetros ResultSelector, ResultPath, y OutputPath.