kubernetes で v1.7.9 を使用すると、次の問題に直面しています。
レート制限 ( traefik.ingress.kubernetes.io/rate-limit
) とカスタム レスポンス ヘッダー ( traefik.ingress.kubernetes.io/custom-response-headers
) を設定した場合、リクエストがレート制限されると、カスタム ヘッダーは設定されません。これらのプラグイン間の順序/優先度が原因だと思います。そして、レート制限に達したらできるだけ早く応答を返す必要があることに完全に同意しますが、必要に応じて優先順位を変更できればいいと思います。
したがって、問題は、ミドルウェアの優先順位を設定できるかどうかです。
ドキュメントにもgithubの問題にも手がかりが見つかりませんでした。
具体的なユースケース:
レート制限が開始された場合でも、CORS ポリシー ヘッダーを常に設定する必要があります。そうしないと、ブラウザーが許可しないため、SPA が応答オブジェクトを取得できないため、これが必要です。
Access to XMLHttpRequest at 'https://api.example.com/api/v1/resource' from origin 'https://cors.exmaple.com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
この場合、ヘッダーミドルウェアの優先度をレート制限ミドルウェアよりも高く設定できれば、それは良い解決策になります。