Con respecto a AWS AppSync, hay una forma de suscribirse a un elemento en una matriz, por ejemplo:

onSendMessage(recipientIds:[myID,otherPotentiallyRandomAndUnknownIds]) {

}

He intentado simplemente agregar el elemento que estoy buscando, sin embargo, no activa una suscripción si me estoy perdiendo los otros elementos (y también en orden)

0
John 30 jun. 2019 a las 07:06

1 respuesta

La mejor respuesta

Desafortunadamente, esto es algo que no se puede hacer trivialmente. Además, como señaló el pedido, ya que en GraphQL debería verse como una lista (que se ordena). Por lo tanto, la suscripción activa esperando el orden que proporcionó en el esquema. También espera los argumentos exactos que proporcione en la lista porque un esquema de GraphQL se considera esencialmente como un contrato por parte de los clientes, por lo que si el contrato determina que la suscripción está en una lista con estos elementos en este orden, luego iniciará la suscripción basada en que.

Ahora, lo que podría hacer es configurar una corriente de dinamo (asumiendo Dynamodb como su fuente de datos) que alimenta cualquier cambio en la tabla en una lambda desde donde puede hacer una mutación en AppSync (dependiendo de si se realizó un cambio a un elemento en la matriz) para activar una suscripción (configure solo la mutación / suscripciones simples para este caso de uso). Esto es una especie de sirviro de hack-y, y puede haber otras soluciones novedosas que pueda explorar.

1
Ashwin Devendran 3 jul. 2019 a las 21:21