現在の URL が HTTP または HTTPS の下にあるかどうかを取得したいだけです。問題は、テスト環境に多数の自己署名証明書があるため、おそらく証明書を検証するオプションがないことです。私は次のことを試しましたが、すべての場合にうまくいくとは限りません。
String protocol = request.getProtocol();
out.println(protocol); // prints out HTTP/1.1 on self signed servers
Boolean secure = ((HttpServletRequest)pageContext.getRequest()).isSecure();
if (secure) {
out.println("secure")
} else {
out.println("not secure") // always fails
}
getRequest を使用して「https」の文字列を検索できると思いますが、これを行うには本当にサポートされている方法があると思います。