Connexion à une source externe d'avatars ?

Je connais déjà les gravatars et les avatars provenant de systèmes externes, mais serait-il possible d’assigner l’avatar d’un utilisateur à une autre image externe ? Dans mon cas, l’utilisateur ne devrait pas pouvoir modifier son avatar ; celui-ci est déterminé par un autre système qui spécifie quelle image utiliser.

Dans une partie de ce « système », je peux effectuer une requête PUT pour mettre à jour l’avatar d’un utilisateur, par exemple :

$.ajax({
    url: 'https://example.com/site/selectable-avatars.json',
    type: 'GET',
    success: function(data) {
        const payload = {
            url: data[1] // Pour l'instant en dur. Sera assigné plus tard en fonction de certaines données
        }
        $.ajax({
            url: 'https://example.com/u/' + username + '/preferences/avatar/select',
            type: 'PUT',
            headers: {
                'Accept': 'application/json',
                'Content-Type': 'application/json',
                'Api-Key': 'my-api-key',
                'Api-Username': 'my-api-username'
             },
             data: JSON.stringify(payload),
             success: function(data, textStatus) {
                 console.log(data, textStatus);
             }
        })
     }
  })

Cela fonctionne parfaitement : l’image d’avatar est assignée à l’image transmise, qui est ici en dur sous la forme data[1]. Les data constituent un tableau d’images défini dans les paramètres de Discourse sous le nom « avatars sélectionnables ».

Le problème est que l’URL de l’image est en réalité construite comme https://example.com/${url} plutôt que simplement url.

Je suppose que la question se résume à ceci : est-il possible de définir le fichier d’avatar sur une image externe (provenant d’un autre domaine) plutôt que sur une image interne ? Sinon, existe-t-il une meilleure façon de réaliser ce que j’essaie de faire ?

Merci de votre temps.

Vous pouvez obtenir cela de manière prise en charge en utilisant Authentification unique officielle pour Discourse (SSO) et les paramètres connexes.