Problemi comuni
Problemi comuniLe Application Passwords non funzionano

Le Application Passwords non funzionano

Quando si utilizzano le application passwords per autenticare le richieste verso l'endpoint GraphQL e queste non funzionano, potrebbe esserci un conflitto con un plugin installato sul sito. In particolare, ciò può accadere quando WooCommerce è installato e attivato sul sito.

Se la richiesta a un endpoint GraphQL che utilizza una Application Password non riesce ad autenticare l'utente, e hai effettuato una delle seguenti operazioni in Gato GraphQL:

  • Aggiornato il percorso del GraphQL Single Endpoint
  • Aggiornato lo slug di base dei Custom Endpoints o delle Persisted Queries
  • Disattivato un endpoint (disattivando il modulo corrispondente)

...allora devi applicare la stessa modifica tramite un hook, per evitare il conflitto.

Perché ciò accade

C'è un conflitto di sincronizzazione tra l'inizializzazione di WooCommerce e la configurazione del container dei servizi di Gato GraphQL.

WooCommerce attiva il filtro application_password_is_api_request durante il suo processo di inizializzazione. Poiché Gato GraphQL non è ancora inizializzato, non può recuperare i percorsi corretti degli endpoint dal database, per determinare se la richiesta proviene da un endpoint GraphQL e abilitare l'uso delle application passwords per l'autenticazione.

Soluzione temporanea

Quando il filtro application_password_is_api_request viene attivato da WooCommerce (o da un altro plugin), Gato GraphQL assume i percorsi predefiniti per gli endpoint GraphQL.

Quindi, se modifichi il percorso di un endpoint pubblico tramite le Impostazioni del plugin, devi applicare la stessa modifica tramite un hook.

Consulta la guida Replicare gli aggiornamenti del percorso dell'endpoint GraphQL tramite hooks per la soluzione.