語言

SSLEngine.HandshakeApplicationProtocolSelector 屬性

定義

在 SSL/TLS 握手期間,取得回調函式,選擇應用程式協定值。 -或- 註冊一個回撥函式,選擇應用協定值以進行 SSL/TLS 握手。

public virtual Java.Util.Functions.IBiFunction? HandshakeApplicationProtocolSelector { [Android.Runtime.Register("getHandshakeApplicationProtocolSelector", "()Ljava/util/function/BiFunction;", "GetGetHandshakeApplicationProtocolSelectorHandler", ApiSince=29)] get; [Android.Runtime.Register("setHandshakeApplicationProtocolSelector", "(Ljava/util/function/BiFunction;)V", "GetSetHandshakeApplicationProtocolSelector_Ljava_util_function_BiFunction_Handler", ApiSince=29)] set; }
[<get: Android.Runtime.Register("getHandshakeApplicationProtocolSelector", "()Ljava/util/function/BiFunction;", "GetGetHandshakeApplicationProtocolSelectorHandler", ApiSince=29)>]
[<set: Android.Runtime.Register("setHandshakeApplicationProtocolSelector", "(Ljava/util/function/BiFunction;)V", "GetSetHandshakeApplicationProtocolSelector_Ljava_util_function_BiFunction_Handler", ApiSince=29)>]
member this.HandshakeApplicationProtocolSelector : Java.Util.Functions.IBiFunction with get, set

屬性值

回調函式,若未設定回調函式則為 null。

屬性

備註

財產取得者文件:

在 SSL/TLS 握手期間,取得回調函式,選擇應用程式協定值。 請參見 #setHandshakeApplicationProtocolSelector setHandshakeApplicationProtocolSelector 函式的型別參數。

新增9。

Java 文件 javax.net.ssl.SSLEngine.getHandshakeApplicationProtocolSelector()。

屬性設定文件:

註冊一個回調函式,選擇 SSL/TLS 握手的應用程式協定值。 此函式會覆寫所有提供的SSLParameters#setApplicationProtocols SSLParameters.setApplicationProtocols值,並支援以下類型參數:<blockquote><dl<>dtSSLEngine<>dd> 函式的第一個參數允許檢查電流SSLEngine,包括握手會話及設定。 <dt>List<String><dd> 函式的第二個參數列出了 TLS 對等端所宣告的應用程式協定名稱。 <dt>String<dd> 函式的結果是應用程式協定名稱,或為空,表示所有宣告名稱都不可接受。 若回傳值為空 String ,則不會使用應用協定指示。 如果回傳值為空值(未選擇值)或是對端未公告的值,底層協議將決定應採取的行動。 (例如,ALPN 會發送「no_application_protocol」警示並終止連線。) </dl></區塊引用>

例如,以下呼叫註冊一個回調函式,檢查 TLS 握手參數並選擇應用程式協定名稱:

{@code
                serverEngine.setHandshakeApplicationProtocolSelector(
                    (serverEngine, clientProtocols) -> {
                        SSLSession session = serverEngine.getHandshakeSession();
                        return chooseApplicationProtocol(
                            serverEngine,
                            clientProtocols,
                            session.getProtocol(),
                            session.getCipherSuite());
                    });
            }

新增9。

的 javax.net.ssl.SSLEngine.setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLEngine, java.util.List<java.lang.String>, java.lang.String>)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於