Problema nell'accesso alle API di Discourse da un'app React

L’accesso a fetch su ‘https://boostfloral.discourse.group/categories.json?’ dall’origine ‘http://localhost:3000’ è stato bloccato dalla policy CORS: l’intestazione della richiesta API-key non è consentita da Access-Control-Allow-Headers nella risposta preflight.

Sto riscontrando il problema sopra quando provo a chiamare le API di Discourse. Ho già aggiunto un certificato SSL ai miei server. Sto aggiungendo le opzioni CORS presenti nel mio pannello di amministrazione ma continuo a riscontrare questo problema.

Qualcuno ha riscontrato qualcosa di simile e potrebbe aiutarmi a trovare una soluzione???

È una User API Key? Se non erro, dovrebbe essere User-Api-Key.

Ora sto ricevendo la seguente risposta.

Accesso a fetch su ‘https://boostfloral.discourse.group/latest.json?order=default\u0026ascending=false’ dall’origine ‘http://localhost:3000’ è stato bloccato dalla policy CORS: il campo dell’intestazione della richiesta api-username non è consentito da Access-Control-Allow-Headers nella risposta preflight.

Se stai cercando di utilizzare la Admin API (a differenza della User API), i campi header richiesti sono Api-Key e Api-Username.

Penso che per i client Javascript pubblici, l’API di amministrazione non sia consentita (purtroppo, questo complica tutto, lo so!) Ma dovrai usare invece User API keys specification.

Per quanto mi riguarda, sto ancora cercando di capire come fare. Voglio solo recuperare una risposta .json pubblicamente disponibile.

Se è pubblico, la configurazione di CORS dovrebbe essere sufficiente e non dovresti preoccuparti affatto delle chiavi API.

2 Mi Piace

Sì, grazie! Questo è stato risolto per me qui: Using JavaScript fetch to get publicly available page from Discourse into an external site (Discourse API) - #2 by pfaffman

@fahadaslam98 come ha detto @RGJ, se il CORS è configurato correttamente, la rimozione delle API key dalle intestazioni dovrebbe funzionare, :+1:

1 Mi Piace