JavaTM 2 Platform
Standard Ed. 6

javax.net.ssl
類別 HttpsURLConnection

java.lang.Object
  繼承者 java.net.URLConnection
      繼承者 java.net.HttpURLConnection
          繼承者 javax.net.ssl.HttpsURLConnection

public abstract class HttpsURLConnection
extends HttpURLConnection

HttpsURLConnection 擴展 HttpURLConnection,支持各種特定於 https 功能。

有關 https 規範的更多詳細資訊,請參見 http://www.w3.org/pub/WWW/Protocols/RFC 2818

此類別使用 HostnameVerifierSSLSocketFactory。為這兩個類別都定義了預設實作。但是,可以根據每個類別(靜態的)或每個實例來替換該實作。所有新 HttpsURLConnection 實例在創建時將被分派“預設的”靜態值,通過在連接前調用每個實例適當的 set 方法可以覆寫這些值。

從以下版本開始:
1.4

欄位摘要
protected  HostnameVerifier hostnameVerifier
          此物件的 hostnameVerifier
 
從類別 java.net.HttpURLConnection 繼承的欄位
chunkLength, fixedContentLength, HTTP_ACCEPTED, HTTP_BAD_GATEWAY, HTTP_BAD_METHOD, HTTP_BAD_REQUEST, HTTP_CLIENT_TIMEOUT, HTTP_CONFLICT, HTTP_CREATED, HTTP_ENTITY_TOO_LARGE, HTTP_FORBIDDEN, HTTP_GATEWAY_TIMEOUT, HTTP_GONE, HTTP_INTERNAL_ERROR, HTTP_LENGTH_REQUIRED, HTTP_MOVED_PERM, HTTP_MOVED_TEMP, HTTP_MULT_CHOICE, HTTP_NO_CONTENT, HTTP_NOT_ACCEPTABLE, HTTP_NOT_AUTHORITATIVE, HTTP_NOT_FOUND, HTTP_NOT_IMPLEMENTED, HTTP_NOT_MODIFIED, HTTP_OK, HTTP_PARTIAL, HTTP_PAYMENT_REQUIRED, HTTP_PRECON_FAILED, HTTP_PROXY_AUTH, HTTP_REQ_TOO_LONG, HTTP_RESET, HTTP_SEE_OTHER, HTTP_SERVER_ERROR, HTTP_UNAUTHORIZED, HTTP_UNAVAILABLE, HTTP_UNSUPPORTED_TYPE, HTTP_USE_PROXY, HTTP_VERSION, instanceFollowRedirects, method, responseCode, responseMessage
 
從類別 java.net.URLConnection 繼承的欄位
allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches
 
建構子摘要
protected HttpsURLConnection(URL url)
          使用指定的 URL 創建 HttpsURLConnection
 
方法摘要
abstract  String getCipherSuite()
          返回在此連接上使用的密碼套件。
static HostnameVerifier getDefaultHostnameVerifier()
          獲取此類別的新實例所繼承的預設 HostnameVerifier
static SSLSocketFactory getDefaultSSLSocketFactory()
          獲取此類別的新實例所繼承的預設靜態 SSLSocketFactory
 HostnameVerifier getHostnameVerifier()
          獲取此實例適當的 HostnameVerifier
abstract  Certificate[] getLocalCertificates()
          返回連繫交換期間發送給伺服器的證書。
 Principal getLocalPrincipal()
          返回連繫交換期間發送到伺服器的主體。
 Principal getPeerPrincipal()
          返回伺服器的主體,它是作為定義Session的一部分而建立的。
abstract  Certificate[] getServerCertificates()
          返回伺服器的證書鏈,它是作為定義Session的一部分而建立的。
 SSLSocketFactory getSSLSocketFactory()
          獲取為安全 https URL 連接創建Socket時使用的 SSL Socket處理器。
static void setDefaultHostnameVerifier(HostnameVerifier v)
          設置此類別的新實例所繼承的預設 HostnameVerifier
static void setDefaultSSLSocketFactory(SSLSocketFactory sf)
          設置此類別的新實例所繼承的預設 SSLSocketFactory
 void setHostnameVerifier(HostnameVerifier v)
          設置此實例的 HostnameVerifier
 void setSSLSocketFactory(SSLSocketFactory sf)
          設置當此實例為安全 https URL 連接創建Socket時使用的 SSLSocketFactory
 
從類別 java.net.HttpURLConnection 繼承的方法
disconnect, getErrorStream, getFollowRedirects, getHeaderField, getHeaderFieldDate, getHeaderFieldKey, getInstanceFollowRedirects, getPermission, getRequestMethod, getResponseCode, getResponseMessage, setChunkedStreamingMode, setFixedLengthStreamingMode, setFollowRedirects, setInstanceFollowRedirects, setRequestMethod, usingProxy
 
從類別 java.net.URLConnection 繼承的方法
addRequestProperty, connect, getAllowUserInteraction, getConnectTimeout, getContent, getContent, getContentEncoding, getContentLength, getContentType, getDate, getDefaultAllowUserInteraction, getDefaultRequestProperty, getDefaultUseCaches, getDoInput, getDoOutput, getExpiration, getFileNameMap, getHeaderField, getHeaderFieldInt, getHeaderFields, getIfModifiedSince, getInputStream, getLastModified, getOutputStream, getReadTimeout, getRequestProperties, getRequestProperty, getURL, getUseCaches, guessContentTypeFromName, guessContentTypeFromStream, setAllowUserInteraction, setConnectTimeout, setContentHandlerFactory, setDefaultAllowUserInteraction, setDefaultRequestProperty, setDefaultUseCaches, setDoInput, setDoOutput, setFileNameMap, setIfModifiedSince, setReadTimeout, setRequestProperty, setUseCaches, toString
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

欄位詳細資訊

hostnameVerifier

protected HostnameVerifier hostnameVerifier
此物件的 hostnameVerifier

建構子詳細資訊

HttpsURLConnection

protected HttpsURLConnection(URL url)
使用指定的 URL 創建 HttpsURLConnection

參數:
url - URL
方法詳細資訊

getCipherSuite

public abstract String getCipherSuite()
返回在此連接上使用的密碼套件。

返回:
密碼套件
拋出:
IllegalStateException - 如果在連接建立前調用此方法。

getLocalCertificates

public abstract Certificate[] getLocalCertificates()
返回連繫交換期間發送給伺服器的證書。

註:僅當使用基於證書的密碼套件時此方法才有用。

當在一次連繫交換中有多個證書可供使用時,實作選擇它認為是“最好的”可用證書鏈,並把它傳輸到另一方。此方法允許調用者知道實際發送的證書鏈。

返回:
證書的有序陣列,客戶端的證書在前,後跟所有證書頒發機構。如果沒有發送任何證書,則返回 null。
拋出:
IllegalStateException - 如果在連接建立前調用此方法。
另請參見:
getLocalPrincipal()

getServerCertificates

public abstract Certificate[] getServerCertificates()
                                             throws SSLPeerUnverifiedException
返回伺服器的證書鏈,它是作為定義Session的一部分而建立的。

註:僅當使用基於證書的密碼套件時才可以使用此方法;將它與非基於證書的密碼套件(如 Kerberos)一起使用將拋出 SSLPeerUnverifiedException。

返回:
伺服器證書的有序陣列,同位體的證書在前,後跟所有證書頒發機構。
拋出:
SSLPeerUnverifiedException - 如果沒有驗證同位體。
IllegalStateException - 如果在連接建立前調用此方法。
另請參見:
getPeerPrincipal()

getPeerPrincipal

public Principal getPeerPrincipal()
                           throws SSLPeerUnverifiedException
返回伺服器的主體,它是作為定義Session的一部分而建立的。

註:子類別應覆寫此方法。如果沒有覆寫此方法,則對於基於證書的密碼套件,它將預設返回伺服器終端實體證書的 X500Principal,對於非基於證書的密碼套件(如 Kerberos),則拋出 SSLPeerUnverifiedException。

返回:
伺服器的主體。返回基於 X509 的密碼套件的終端實體證書的 X500Principal,以及 Kerberos 的密碼套件的 KerberosPrincipal。
拋出:
SSLPeerUnverifiedException - 如果沒有驗證同位體
IllegalStateException - 如果在連接建立前調用此方法。
從以下版本開始:
1.5
另請參見:
getServerCertificates(), getLocalPrincipal()

getLocalPrincipal

public Principal getLocalPrincipal()
返回連繫交換期間發送到伺服器的主體。

註:子類別應覆寫此方法。如果沒有覆寫此方法,則對於基於證書的密碼套件,它將預設返回發送到伺服器的終端實體證書的 X500Principal,對於非基於證書的密碼套件(如 Kerberos),則返回 null。

返回:
發送到伺服器的主體。返回基於 X509 的密碼套件的終端實體證書的 X500Principal,以及 Kerberos 的密碼套件的 KerberosPrincipal。如果沒有發送任何主體,則返回 null。
拋出:
IllegalStateException - 如果在連接建立前調用此方法。
從以下版本開始:
1.5
另請參見:
getLocalCertificates(), getPeerPrincipal()

setDefaultHostnameVerifier

public static void setDefaultHostnameVerifier(HostnameVerifier v)
設置此類別的新實例所繼承的預設 HostnameVerifier

如果不調用此方法,則預設的 HostnameVerifier 假定連接不應該被允許。

參數:
v - 預設的主機名校驗器
拋出:
IllegalArgumentException - 如果 HostnameVerifier 參數為 null。
SecurityException - 如果安全管理器存在並且其 checkPermission 方法不允許 SSLPermission("setHostnameVerifier")
另請參見:
getDefaultHostnameVerifier()

getDefaultHostnameVerifier

public static HostnameVerifier getDefaultHostnameVerifier()
獲取此類別的新實例所繼承的預設 HostnameVerifier

返回:
預設的主機名校驗器
另請參見:
setDefaultHostnameVerifier(HostnameVerifier)

setHostnameVerifier

public void setHostnameVerifier(HostnameVerifier v)
設置此實例的 HostnameVerifier

此類別的新實例繼承由 setDefaultHostnameVerifier 設置的預設靜態主機名校驗器。調用此方法會替換此物件的 HostnameVerifier

參數:
v - 主機名校驗器
拋出:
IllegalArgumentException - 如果 HostnameVerifier 參數為 null。
另請參見:
getHostnameVerifier(), setDefaultHostnameVerifier(HostnameVerifier)

getHostnameVerifier

public HostnameVerifier getHostnameVerifier()
獲取此實例適當的 HostnameVerifier

返回:
主機名校驗器
另請參見:
setHostnameVerifier(HostnameVerifier), setDefaultHostnameVerifier(HostnameVerifier)

setDefaultSSLSocketFactory

public static void setDefaultSSLSocketFactory(SSLSocketFactory sf)
設置此類別的新實例所繼承的預設 SSLSocketFactory

當為安全 https URL 連接創建Socket時使用Socket處理器。

參數:
sf - 預設的 SSL Socket處理器
拋出:
IllegalArgumentException - 如果 SSLSocketFactory 參數為 null。
SecurityException - 如果安全管理器存在並且其 checkSetFactory 方法不允許指定Socket處理器。
另請參見:
getDefaultSSLSocketFactory()

getDefaultSSLSocketFactory

public static SSLSocketFactory getDefaultSSLSocketFactory()
獲取此類別的新實例所繼承的預設靜態 SSLSocketFactory

當為安全 https URL 連接創建Socket時使用Socket處理器。

返回:
預設的 SSLSocketFactory
另請參見:
setDefaultSSLSocketFactory(SSLSocketFactory)

setSSLSocketFactory

public void setSSLSocketFactory(SSLSocketFactory sf)
設置當此實例為安全 https URL 連接創建Socket時使用的 SSLSocketFactory

此類別的新實例繼承由 setDefaultSSLSocketFactory 設置的預設靜態 SSLSocketFactory。調用此方法會替換此物件的 SSLSocketFactory

參數:
sf - SSL Socket處理器
拋出:
IllegalArgumentException - 如果 SSLSocketFactory 參數為 null。
另請參見:
getSSLSocketFactory()

getSSLSocketFactory

public SSLSocketFactory getSSLSocketFactory()
獲取為安全 https URL 連接創建Socket時使用的 SSL Socket處理器。

返回:
SSLSocketFactory
另請參見:
setSSLSocketFactory(SSLSocketFactory)

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only