Pubblicare l'evento nella sottoscrizione GraphQL
SI APPLICA A: Tutti i livelli di Gestione API
Il criterio publish-event
pubblica un evento in una o più sottoscrizioni specificate in uno schema dell'API GraphQL. Configura i criteri in un resolver GraphQL per un campo correlato nello schema per un altro tipo di operazione, ad esempio una mutazione. In fase di esecuzione, l'evento viene pubblicato nei client GraphQL connessi. Altre informazioni sulle API GraphQL in API Management.
Nota
Impostare gli elementi e gli elementi figlio del criterio nell'ordine specificato nell'istruzione del criterio. Altre informazioni su come impostare o modificare i criteri di API Management.
Istruzione del criterio
<http-data-source>
<!-- http-data-source is an example resolver policy -->
<http-request>
[...]
</http-request>
<http-response>
[...]
<publish-event>
<targets>
<graphql-subscription id="subscription field" />
</targets>
</publish-event>
</http-response>
</http-data-source>
Elementi
Nome | Descrizione | Richiesto |
---|---|---|
destinazioni | Una o più sottoscrizioni nello schema GraphQL, specificate in sotto-elementi target , in cui viene pubblicato l'evento. |
Sì |
Utilizzo
- Sezioni criteri: elemento
http-response
nel resolverhttp-data-source
- Ambiti dei criteri: solo resolver GraphQL
- Gateway: classico, v2, a consumo
Note sull'utilizzo
- Questo criterio viene richiamato solo quando viene eseguita una query o una mutazione GraphQL correlata.
Esempio
La definizione di criteri di esempio seguente viene configurata in un sistema di risoluzione per la mutazione createUser
. Pubblica un evento nella sottoscrizione onUserCreated
.
Schema di esempio
type User {
id: Int!
name: String!
}
type Mutation {
createUser(id: Int!, name: String!): User
}
type Subscription {
onUserCreated: User!
}
Criterio di esempio
<http-data-source>
<http-request>
<set-method>POST</set-method>
<set-url>https://contoso.com/api/user</set-url>
<set-body template="liquid">{ "id" : {{body.arguments.id}}, "name" : "{{body.arguments.name}}"}</set-body>
</http-request>
<http-response>
<publish-event>
<targets>
<graphql-subscription id="onUserCreated" />
</targets>
</publish-event>
</http-response>
</http-data-source>
Criteri correlati
Contenuto correlato
Per ulteriori informazioni sull'utilizzo dei criteri, vedere:
- Esercitazione: trasformare e proteggere l'API
- Informazioni di riferimento sui criteri per un elenco completo delle istruzioni dei criteri e delle relative impostazioni
- Espressioni di criteri
- Impostare o modificare criteri
- Riutilizzare le configurazioni dei criteri
- Repository dei frammenti di criteri
- Creare criteri usando Microsoft Copilot in Azure