# Clients multiples
Vous pouvez spécifier plusieurs client Apollo si votre application doit se connecter à différents serveurs GraphQL :
const defaultOptions = {
  // Vous pouvez utiliser `wss` pour sécuriser la connexion (recommandé en production)
  // Utilisez `null` pour désactiver les souscriptions
  wsEndpoint: process.env.VUE_APP_GRAPHQL_WS || 'ws://localhost:4000/graphql',
  // Jeton LocalStorage
  tokenName: AUTH_TOKEN,
  // Activation des requĂȘtes persistĂ©es automatiquement avec Apollo Engine
  persisting: false,
  // Utilisation gĂ©nĂ©rale des websockets (pas de requĂȘtes HTTP)
  // Il vous faudra passer un `wsEndpoint` pour que ça fonctionne
  websocketsOnly: false,
  // Rendu cÎté serveur ?
  ssr: false,
}
const clientAOptions = {
  // Utilisez `https` pour sécuriser la connexion (recommandé en production)
  httpEndpoint: 'http://localhost:4000/graphql',
}
const clientBOptions = {
  httpEndpoint: 'http://example.org/graphql',
}
// Invoquez cette fonction dans votre fichier d'application Vue
export function createProvider (options = {}) {
  const createA= createApolloClient({
    ...defaultOptions,
    ...clientAOptions,
  });
  const createB = createApolloClient({
    ...defaultOptions,
    ...clientBOptions,
  });
  const a = createA.apolloClient;
  const b = createB.apolloClient;
  // Création du provider Vue Apollo
  const apolloProvider = new VueApollo({
    clients: {
      a,
      b
    }
    defaultClient: a,
})
Dans l'option apollo du composant, vous pouvez dĂ©finir un client pour toutes vos requĂȘtes, souscriptions, et mutations avec $client (uniquement pour ce composant) :
export default {
  apollo: {
    $client: 'b',
  },
}
Vous pouvez Ă©galement sp"cifier le client dans chaque requĂȘte, souscription et mutation grĂące Ă  l'option client:
tags: {
  query: gql`...`,
  client: 'b',
}