L'idée est de pouvoir renseigner un utilisateur quand on utilise un token "admin". L'admin crée un article en "tant que". Il serait peut être plus parlant d'avoir :
# Crée l'article avec utilisant l'utilisateur authentifié.
# Erreur si on tente une création avec un token admin.
user {
createArticle(title: String!, tags: [ID]): Article
}
# Crée l'article avec utilisant l'utilisateur 12345.
# Erreur si l'utilisateur authentifié n'a pas accès à l'utilisateur 12345.
user(id: "12345") {
createArticle(title: String!, tags: [ID]): Article
}
Une autre solution serait de créer un graph "admin" :
# Crée un article "en tant que" avec un token "admin".
# Erreur si on tente un appel avec un token non admin.
admin {
createArticle(title: String!, owner: ID!, tags: [ID]): Article
}
# Crée un article avec l'utilisateur authentifié.
# Erreur si on tente une création avec un token admin.
createArticle(title: String!, tags: [ID]): Article
La première solution est plus générique alors que la deuxième est peut être plus explicite?
Il y a deux façons de s'authentifier auprès de l'API GraphQL :
De ce fait, on se retrouve avec des signatures de mutations avec un
user
optionnel:L'idée est de pouvoir renseigner un utilisateur quand on utilise un token "admin". L'admin crée un article en "tant que". Il serait peut être plus parlant d'avoir :
Une autre solution serait de créer un graph "admin" :
La première solution est plus générique alors que la deuxième est peut être plus explicite?