2017-03-13 18 views
16

PayPal-node-SDKクラウド機能 - のgetaddrinfo ENOTFOUND

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); 
      } 
     }); 
    }); 
}); 

を使用してPayPalのAPIへのリクエストをしようが、私は常にエラーを取得しています:私が試した

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) 

もの:

  1. 全く異なるホストに依頼しても依然としてENOTFOUND
  2. ホストに前置しhttps://cors(req,res,()=>{...})
  3. で要求をラッピング

問題は何ですか?

答えて

35

外部APIリクエストを行うには、有料プランが必要です。

FirebaseのBlazeプラン(有料)は、クラウド機能のために無料で割り当てられます。 https://firebase.google.com/pricing/

+0

これに関連するものはありますか?私は同じ問題を抱えています。購入する前に、それが問題であることを確実に知りたいと思います。 – Alx

+2

ファンクションログに警告が表示されるはずです。+おそらく、どこかの価格設定ページに埋め込まれている可能性があります。私はFirebaseのクラウド機能のDevRelです) –

+1

脚注3:Sparkプランは、Googleが所有するサービスへの送信ネットワーク要求のみを許可します。 Blazeプランでは、Cloud Functionsが永続的なフリー層を提供します。 –

関連する問題