Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

107
Visualizações
cómo traducir curl en una solicitud POST de javascript

Estoy tratando de conectarme a la API de pago llamada PayU, brindan un ejemplo de cómo conectarse a través de curl uno es conectarse a través de la API de descanso

 curl -X POST https://secure.payu.com/pl/standard/user/oauth/authorize \ -d 'grant_type=client_credentials&client_id=145227&client_secret=12f071174cb7eb79d4aac5bc2f07563f'

y uno es para conectarme a través de SDK, que también me gustaría usar, pero este necesita configuraciones adicionales en la tienda, y tengo problemas con el primero, así que si alguien tuviera la amabilidad de descifrar el otro también lo haría. Se bueno

 curl -X POST https://secure.payu.com/pl/standard/user/oauth/authorize \ -H "Cache-Control: no-cache" -H "Content-Type: application/x-www-form-urlencoded" -d 'grant_type=trusted_merchant&client_id=[provided by PayU]&client_secret=[provided by PayU]&email=[users email]&ext_customer_id=[Id of the customer used in merchant system]'

En curl, el primero entregó el token sin problemas, sin embargo, estoy tratando de hacer lo mismo en el código y no puedo. Este es mi código:

 fetch('https://secure.payu.com/pl/standard/user/oauth/authorize', { method: 'POST', body: JSON.stringify({ 'grant_type': 'client_credentials', 'client_id': '145227', 'client_secret': '12f071174cb7eb79d4aac5bc2f07563f', }) }).then(res => { if (!res.ok) { throw new Error("Fetching payU failed, please try again later!"); } return res; }) .then(data => { console.log(data) return { payUdata: data } }) .catch(err => { console.log(err); });
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Un cuerpo de publicación básico no es un json serializado, los datos se ven como parámetros de consulta, al igual que en el curl

 { method: 'POST', headers: {'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'}, body: "grant_type=client_credentials&client_id=145227&client_secret=12f071174cb7eb79d4aac5bc2f07563f") }

del comentario de @BankBuilder:

 function querifyObject(obj){ return new URLSearchParams(Object.entries(obj)).toString(); }

y entonces:

 { method: 'POST', headers: {'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'}, body: querifyObject({ 'grant_type': 'client_credentials', 'client_id': '145227', 'client_secret': '12f071174cb7eb79d4aac5bc2f07563f', }) }

Captura de pantalla de trabajo

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda