Lire une story
Lisez une story par son slug avec la requête story, ou par son identifiant GraphQL avec la requête node.
Il y a deux façons de lire une story. La première utilise son slug, le numéro qui figure dans son adresse. La seconde utilise son identifiant GraphQL, celui que renvoient les mutations et la plupart des autres objets. L’article Identifiants GraphQL et nœuds explique la différence.
Par slug
Utilisez la requête story avec le slug. Cet exemple lit la story dont le slug est 123. Il renvoie le titre de la dernière version et le nom du propriétaire :
query {
story(slug: 123) {
id
slug
version {
title
}
user {
name
}
}
}
La réponse :
{
"data": {
"story": {
"id": "U3Rvcnk6MTIz",
"slug": 123,
"version": {
"title": "Hello world!"
},
"user": {
"name": "John Doe"
}
}
}
}
Par identifiant
Utilisez la requête node avec l’identifiant. Comme node peut renvoyer n’importe quel type, placez les champs sous ... on Story :
query {
node(id: "U3Rvcnk6MTIz") {
... on Story {
id
version {
title
}
user {
name
}
}
}
}
La seule différence dans la réponse est le nom de la clé, node au lieu de story :
{
"data": {
"node": {
"id": "U3Rvcnk6MTIz",
"version": {
"title": "Hello world!"
},
"user": {
"name": "John Doe"
}
}
}
}
Pour obtenir la même forme qu’avec la première requête, donnez un alias au champ :
query {
story: node(id: "U3Rvcnk6MTIz") {
... on Story {
id
}
}
}
Choisir la version
version renvoie la dernière version publiée, dans la langue préférée de l’utilisateur à qui appartient le jeton. Passez lang pour choisir une autre langue, ou uuid pour lire une version précise :
query {
story(slug: 123) {
version(lang: "fr") {
title
published
publishedAt
}
}
}