在 google 云函数上调用 HTTPS 请求获取连接连接到服务器

Calling HTTPS request on google cloud function getting connect connect to server

我在 google 云函数上调用 https 端点,使用 http 触发器,但我得到了

{
   "type": "connection_error",
   "message": "Error occured while connecting to First API",
   "error": {
      "code": "ENOTFOUND",
      "errno": "ENOTFOUND",
      "syscall": "getaddrinfo",
      "hostname": "api-cert.payeezy.com",
      "host": "api-cert.payeezy.com",
      "port": 443
   }
}

完全相同的代码适用于 amazon lambda,有人知道 google 云函数是否需要调用 https 服务器的特殊调整吗?我尝试使用 cors 但仍然出现相同的错误。

我的代码是使用 payeezy 的非常通用的 http 调用 api

    var nonce = Math.random() * 1000000000000000000;
    var timeInMillis = new Date().getTime();
    var requestJSON=JSON.stringify({
            method: 'credit_card',
            amount: '1299',
            currency_code: 'USD',
            credit_card: {
                card_number: '4788250000028291',
                cvv: '123',
                type: 'visa',
                exp_date: '1230',
                cardholder_name: 'Tom Eck'
            },
            billing_address: {
                street: '225 Liberty Street',
                city: 'NYC',
                state_province: 'NY',
                zip_postal_code: '10281',
                country: 'US'
            }
        });
    var headers = {
        'Content-Type': 'application/json',
        'Accept': 'application/json',
        'apikey': apikey,
        'token': merchant_token,
        'nonce': nonce,
        'timestamp':timeInMillis,
        'Authorization': getAuthorizationHeader(apikey, apisecret, requestJSON, merchant_token, nonce, timeInMillis)
    };
    
    var options = {
        host: "api-cert.payeezy.com",
        path: '/v1/transactions',
        method: "POST",
        headers: headers
    };
    var req1 = http.request(options);
    req1.on('response', responseHandler(callback));
    req1.on('error', errorHandler(callback));
    req1.write(requestJSON);
    req1.end();

感谢 James Daniel 的评论,我注意到 google 函数只能使用 spark 计划调用 google 自己的服务。 定价页面中有一个出站网络行 https://firebase.google.com/pricing/