Recibí una solicitud prohibida al enviar una solicitud POST usando axios.
Aquí está mi función axios:
const headers = { 'Authorization': `bearer ${JSON.parse(localStorage.getItem('TOKEN'))}`, 'Content-Type': 'application/json' } const getByRelationCode = (data) => { const response = Client.post(`${TRACKING_API}/getByRelationCode`, data, { headers }) return response }Y esta es la función de llamada.
const getDocument = (relationCode) => { await Service.getByRelationCode({ relationCode }) .then((res) => {console.log(res)) .catch(err => console.log(err)) }Cuando llegué al punto final usando cartero, el punto final devolvió la respuesta. Pero cuando lo llamo usando Axios, devuelve una solicitud prohibida. ¿Falta algo en mi código?
Tienes errores deletreados en tu encabezado.
const headers = { 'Authorization': `Bearer ${JSON.parse(localStorage.getItem('TOKEN'))}`, 'Content-Type': 'application/json' } Pero en algún marco podemos personalizarlo. Si lo ha personalizado por su cuenta, puede llamarlo bearer . Aunque no es correcto nombrarlo así.
intenta así
const config = { headers: { 'Authorization': `bearer ${localStorage.getItem('TOKEN')}`, 'Content-Type': 'application/json' } }; const getByRelationCode = (data) => { const response = Client.post(`${TRACKING_API}/getByRelationCode`, data, config) return response; }Creo que está sucediendo porque deletreó Bearer incorrectamente en su código y el servidor recibió su solicitud pero no pudo extraer el token de él.
Pruébalo con la ortografía correcta de Bearer .
const headers = { 'Authorization': `Bearer ${JSON.parse(localStorage.getItem('TOKEN'))}`, 'Content-Type': 'application/json' }