Problema con l'autenticazione API REST di WooCommerce - Soluzioni e errori comuni

6 nov 2017, 08:12:18
Visualizzazioni: 14.4K
Voti: 4

Sto utilizzando Postman per testare le chiamate API REST in WooCommerce. Quando chiamo le API predefinite di WooCommerce, viene visualizzato il seguente errore:

{
"code": "woocommerce_rest_cannot_create",
"message": "Spiacente, non sei autorizzato a creare risorse.",
"data": {
    "status": 401
   }
}

L'errore sopra viene visualizzato quando utilizzo l'autenticazione Basic e il metodo POST dell'API per creare clienti.

Quando invece provo a chiamare l'API per visualizzare i prodotti con cURL:

http://example.com/wp-json/wc/v2/products

Utilizzando il metodo GET da Postman, viene visualizzato questo errore:

{
"code": "woocommerce_rest_cannot_view",
"message": "Spiacente, non puoi elencare le risorse.",
"data": {
    "status": 401
   }
}

Sarebbe fantastico se qualcuno potesse aiutarmi a risolvere questo problema. Grazie.

1
Commenti

Utilizza l'autenticazione HTTPS in Postman, invece di usare oAuth1.0 come opzione di autenticazione. Usa l'autenticazione Basic e passa la consumer key come username. La password dovrebbe essere la consumer secret.

LumberHack LumberHack
6 nov 2017 13:55:25
Tutte le risposte alla domanda 5
0

Ho trovato la soluzione per questo. Utilizza l'Autenticazione Base da Postman.

Grazie

23 giu 2018 05:23:56
0

Anch'io ho riscontrato lo stesso problema, ho provato con Postman, PHP, NodeJs e tutto il resto, ho passato quasi 2 giorni senza ottenere risultati. Alla fine ho iniziato a ricevere risposte dopo aver aggiunto uno slash alla fine dell'URL.

Voglio dire,

Inizialmente stavo usando https://example.com/wp-json/wc/v3/products?consumer_key=ck_XXXX&consumer_secret=cs_XXXX ma l'ho cambiato in questo modo https://example.com/wp-json/wc/v3/products/?consumer_key=ck_XXXX&consumer_secret=cs_XXXX (ho semplicemente aggiunto uno slash prima del punto interrogativo all'inizio della query string).

In Postman, anche senza impostare alcuna configurazione di autorizzazione (Tipo = No Auth), ho iniziato a ricevere risposte.

Potrebbe essere in qualche modo correlato al mio file .htaccess, ma ho pensato che potesse essere utile condividere questa soluzione anche qui.

4 ago 2021 10:52:06
0

Per me, era un problema di autenticazione.

Stavo utilizzando l'autenticazione Basic per Postman

Basta selezionare OAuth 1.0 come tipo di autenticazione e inserire la consumer key e la secret key nei rispettivi campi

Screenshot:

postman-woocommerce-API

7 apr 2022 14:52:47
0
-1

se stai utilizzando l'autenticazione di base, assicurati che Apache restituisca l'header di autorizzazione, nel tuo file http.conf inserisci questo SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

27 lug 2019 22:23:00
1
-1

Assicurati di aver concesso i permessi di Lettura/Scrittura all'utente e verifica anche il file .htaccess. Prova a incollare questo codice nel tuo .htaccess e controlla di nuovo

# BEGIN WordPress
# Le direttive (righe) tra `BEGIN WordPress` e `END WordPress` sono
# generate dinamicamente e dovrebbero essere modificate solo tramite i filtri di WordPress.
# Qualsiasi modifica alle direttive tra questi marcatori verrà sovrascritta.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
27 lug 2020 13:22:46
Commenti

Per favore [modifica] la tua risposta, e aggiungi una spiegazione: perché potrebbe risolvere il problema?

fuxia fuxia
27 lug 2020 21:39:30