2017-12-26 23 views
1

Azure関数を使用すると、corsを有効にし、アクセスが許可されている特定の一連のURLを指定することができます。ワイルドカード文字(*)を入力すると、すべてのドメインがその関数にアクセスできるようになります。Azure関数でCORSワイルドカードサブドメインを有効にする

特定のドメインのすべてのサブドメインが明示的に各サブドメインを設定するのではなく、関数にアクセスできるようにするには、cors設定にエントリを追加する方法はありますか? http://*.example.comなどのエントリを追加して、サブドメインにアクセスできるようにするかどうかを確認しましたが、動作していないようです。これを達成するための他の方法があるかどうか疑問に思っていました。

提案は歓迎され、感謝しています。

ありがとうございます。

答えて

1

this StackOverflow answerに記載されているように、CORSはホスト名に関してはまったく無です。明示的なドメインまたはサブドメインを指定する必要があります。これは仕様全体の一部であり、マイクロソフト固有のものではありません。

Azure関数の基になるサーバーにアクセスできないため、提案されているRegExベースのCORSヘッダーは使用できません。

したがって、関数出力がJSONの場合は、JSONPを使用することをお勧めします。コールバッククエリ文字列パラメータをチェックし、コールバック関数で出力をラップするだけで簡単に行うことができます。 Node.jsの中例:

const addCallback = function (context, req) { 
 
    if (req.query && req.query.callback) { 
 
    context.res.body = callback + '(' + JSON.stringify(context.res.body) + ')' 
 
    } 
 
}

+0

ありがとう! JSONPの実装を調べます。 –

関連する問題