2017-03-17 8 views
2

私は、Expressを使用してHTTP要求を行う機能を設定しようとしていますが、私のリクエストにかかわらず常にENOTFOUNDエラーが発生します。Firebase関数すべてのHTTP要求でENOTFOUND

私はすでに4つの異なるライブラリ(https、request、request-promise、requestify)を使用してリクエストを作成しようとしましたが、すべて同じエラーが発生します。

私はシステムをセットアップするためにこの例に従った:minimal-webhook + authorized-https-endpoint

Crashed with error Error: getaddrinfo ENOTFOUND www.google.com www.google.com:443 

答えて

3

ENOTFOUNDエラー:たとえば、ポストマンを使用してhttps://us-central1-project-abc.cloudfunctions.net/test/

"use strict"; 
const functions = require("firebase-functions"); 
const admin = require("firebase-admin"); 
admin.initializeApp(functions.config().firebase); 

const express = require("express"); 
const app = express(); 

const https = require("https"); 

app.get("*", (req, res) => 
{ 
    var testReq = https.request({ 
     host: "www.google.com", 
     path: "/recaptcha/api/siteverify" 
    }, 

    (res) => { 
     console.log("Finished with response " + res); 
    }); 

    testReq.on("error", (e) => { 
     console.log("Crashed with error " + e); 
    }); 

    testReq.end(); 
}); 

exports.test = functions.https.onRequest(app); 

ログGETの要求:また、エラーがスローされます


私の基本的なテスト機能、 getaddrinfoの場合、DNSリゾルバがDNSアドレスを見つけることができないss。おそらく、プロキシまたは別のDNSリゾルバを使用する必要があります。あなたのFirebase機能がアウトバウンドインターネット接続をまったく行うことができることを確認してください。

+2

'アウトバウンドconnections' ...と思った後、私はそれは私の自由な計画の問題点だと言うでしょう。 Firebaseは「Googleが所有するサービスへの送信ネットワーク要求のみ許可する」と述べている。しかし、Googleサービスにリクエストしていますか? –

+1

私は同じ問題を抱えています。おそらく計画をアップグレードする必要があります – John

1

実際には、外部からリクエストできるようにするには、有料プランに加入する必要があります。

Blazeプラン(あなたが行くにつれて支払う)はあなたにとって良い(私は現在、そのプランをゼロチャージで使用しています)。

https://firebase.google.com/pricing/

関連する問題