Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

329
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!