Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

333
Vistas
Cómo publicar consumir una api con axios

Estoy trabajando en una aplicación Vue y uso Axios para el uso de API. Estoy tratando de consumir una API oauth de AWS para obtener un token y usarlo en otra API. Sin embargo, solo recibo 400 en la consola. La API funciona bien en Postman, por lo que realmente no sé cuál podría ser el problema. He mirado algunas otras preguntas aquí, pero nada ha funcionado. Aquí está mi código.

 auth_api() { axios .post( 'https://myawssite.amazoncognito.com/oauth2/token', {'grant_type':'client_credentials'}, {headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Authorization': 'Basic 123qwe==' }} ) .then(response => (this.token = response)) }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Al final, finalmente lo hice usando XMLHttpRequest para obtener el token. Después de investigar y hacer muchas pruebas, no pude hacerlo con Axios, Fetch, AWS-SDK o AWS-Amplify. Mientras buscaba en Internet, me detuve en una página web llamada https://reqbin.com/ . Hubo algunos ejemplos de solicitudes de publicación usando XMLHttpRequest, así que lo probé y todo funcionó.

 let globalToken; // I declared this outside the export default. // This is in my created() function. const loginUrl = 'https://myawssite.amazoncognito.com/oauth2/token' let xhr = new XMLHttpRequest(); xhr.open('POST', loginUrl); xhr.setRequestHeader('Authorization', 'Basic 123qwe=='); xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xhr.onreadystatechange = function() { if(xhr.readyState === 4) { console.log(xhr.status); globalToken = JSON.parse(xhr.responseText); console.log(globalToken); console.log(globalToken.access_token); } } xhr.send('grant_type=client_credentials')

Solo para complementar la respuesta principal, para la API que necesitaba consumir, usé la biblioteca Superagent (aquí nuevamente Axios y los demás me fallaron, o tal vez solo soy un idiota xD). En este caso, XMLHttpRequest no funcionó.

 import superagent from 'superagent' // This function is in my methods component. let login = globalToken; console.log('token is: ', login.access_token); const apiUrl = 'https://myawssite.execute-api.us-east-1.amazonaws.com/dev/test'; superagent .post(apiUrl) .send({ rut: this.rut}) .set('X-Api-Key', 'QWE123') .set('Authorization', 'Bearer ' + login.access_token) .end((err, res) => { if (err) { console.log(err); } else { console.log('rut: ', this.rut); console.log(res.text); } });
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda