2017-12-27 35 views
1

My IDEはPycharmです。 ローカルでアプリケーションをテストしたいので、ローカルでサービスを実行し、ngrokを使って自分のアプリケーションをインターネットに公開します。facebook webhookのコールバックURLとしてngrok urlを使用しますが、「ホワイトリストに登録されていません」と認識されます

URLはngrokで示したhttps://436cb7e9.ngrok.io

あるしかし、私はFacebookのウェブフックのコールバックURLは上記のこのURLを使用検証したいとき、それは

ERROR 2017年12月27日08示しています。16:37407をwsgi_server.py:329]ホスト436cb7e9.ngrok.ioがホワイトリストに登録されていないことをリクエストしてください。有効なホストが設定されています(['localhost'])

私はこのアプリをうまく使いましたが、なぜこの時間にエラーが表示されるのか分かりません。 誰かが私に提案をくれますか?

+0

許可されたホストのリストにあなたの '436cb7e9.ngrok.io'を置く必要があります。どのフレームワークを使用するのか分かりません。しかし、エラーの説明を注意深く読んでください。 –

+1

@vishes_shellあなたの返事をありがとう。しかし、私は許可されたホストとしてURLを設定する方法がわかりません。私が使用するフレームワークはFlaskです。 実際に、一日中使った後、私は182.0.0から183.0.0に私のgcloudをアップグレードすると問題があることを知り、ホストがブロックされます。だから私は最終的に182.0.0にダウングレードする。 –

答えて

3

gradleのバージョンに関するBradyのコメントのおかげで、あなたがアプリを実行するときにフラグを追加する必要があることがわかりました。

だから、あなたがローカルでアプリケーションを実行すると言う:

python $APPENGINE/dev_appserver.py 

だけのように変更します。

python $APPENGINE/dev_appserver.py --enable_host_checking=false 

、あなたはもうホストホワイトリストのエラーを持つべきではありません。詳細については

、リリースをチェックアウトするには、ここにノート:https://cloud.google.com/appengine/docs/standard/python/release-notes#december_5_2017

これはのgcloud 183.0.0と187.0.0(このコメントの執筆時点での最新バージョン)に私のために正常に動作しているようです。

+0

ありがとう!他の人が回避する方法があることを知っていることは素晴らしいことです! –

0

これは、ngrokダッシュボードのAuthタブで行います。 IP Whitelisting Tunnel Access

アカウントのトンネルエンドポイントへのアクセスを許可することができます。 ホワイトリストは、ngrok.comサーバーによって強制されます。すべてのトンネルエンドポイントにグローバルに適用されます( )。 トンネルエンドポイントへの着信接続がすべてチェックされ、接続のソースIPアドレス が、 ホワイトリストの1つ以上のエントリと一致することが保証されます。接続がホワイトリストと一致しない場合は、すぐに が終了し、ngrokクライアントに転送されません。

特別なケースとして、ホワイトリストが空の場合、すべての接続は となります。です。

あなたはauth tab of your ngrok ダッシュボード上のIPホワイトリストを管理することができ、ホワイトリストに

を管理します。 「IPホワイトリスト」セクションの下に新しいIPアドレスを入力し、 をクリックしてから、ホワイトリストエントリの追加をクリックします。 IPホワイトリストへの変更は、 まで有効です。

IPを使用すると、IPアドレスの範囲全体をホワイトリストに登録したい場合があり、時には

の範囲です。代わりに に1つのIPアドレスを入力するだけで、代わりにCIDR notationを使用してIPアドレスのブロック を指定することができます。たとえば、すべてのIP のアドレスが10.1.2.0から10.1.2.255になるようにするには、ホワイトリストの に10.1.2.0/24を追加します。

関連する問題