node.js - Funciones en la nube para Firebase-getaddrinfo ENOTFOUND
paypal dns (1)
Intentando hacer una solicitud a la API de Paypal usando PayPal-node-SDK
exports.requestPayment = functions.https.onRequest((req, res) => {
return new Promise(function (fullfilled, rejected) {
paypal.payment.create(create_payment_json, {}, function (error, payment) {
if (error) {
rejected(error);
} else {
console.log("Create Payment Response");
console.log(payment);
res.status(200).send(JSON.stringify({
paymentID: payment.id
})).end();
fullfilled(payment);
}
});
});
});
pero constantemente recibo un error:
Error: getaddrinfo ENOTFOUND api.sandbox.paypal.com api.sandbox.paypal.com:443
at errnoException (dns.js:28:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:76:26)
Cosas que he probado:
-
Hacer una solicitud a un host totalmente diferente, todavía
ENOTFOUND
-
Envolviendo la solicitud con
cors(req,res, ()=>{...})
-
Anteponer
https://
al host
¿Cuál es el problema?
Deberá estar en un plan pago para realizar solicitudes de API externas.
El plan Blaze de Firebase (pago por uso) tiene una asignación gratuita para Cloud Functions. https://firebase.google.com/pricing/