Obteniendo un error al intentar obtener publicaciones individuales

Estoy intentando obtener los datos de publicaciones específicas en Discourse. Pero al hacerlo, recibo un error de que el acceso está restringido, así que procedí a agregar mis claves de API al encabezado. Para hacer eso, escribí el siguiente código:

axios.get(`{myURL}/posts/${pid}.json`, {
    'mode': 'cors',
    headers: {
      Authorization: '{myAPIKey}'
    }})
    .then(function (response) {
      consol.log(response)
      setPostData(response.data?.topic_list?.topics)
    })
    .catch(function (error) {
      console.log(error)
    })

Ya he agregado CORS al servidor de Discourse para permitir solicitudes desde mi servidor. El problema con esto es que ahora estoy recibiendo un error de CORS que dice lo siguiente: La respuesta a la solicitud de pre-vuelo no pasa la verificación de control de acceso: No tiene un estado HTTP ok.

No entiendo qué pude haber hecho mal, ya que todo parece estar en orden.

1 me gusta

Aquí tienes una cabecera de autorización que uso en Ruby:

headers = { ‘Authorization’ => “Bearer #{do_api_key}” }

Así que creo que necesitas añadir Bearer antes de tu clave de API.

Aquí tienes las cabeceras:

         headers = { 'api-key' => discourse_api_key, 'api-username' => 'system' }

Así que creo que necesitas cabeceras como esas. Discourse REST API Documentation debería ayudar con eso.

3 Me gusta