- 直系の既知のサブクラス:
HttpsURLConnection
単一の要求を行う際には個々のHttpURLConnectionインスタンスが使用されますが、その背後のHTTPサーバーへのネットワーク接続は、ほかのインスタンスと透過的に共有される可能性があります。 要求後、HttpURLConnectionのInputStreamまたはOutputStream上でclose()メソッドを呼び出すと、そのインスタンスに関連付けられていたネットワーク・リソースが解放される可能性がありますが、共有されている持続接続への影響はまったくありません。 disconnect()メソッドを呼び出した場合、持続接続がその時点でアイドル状態になっていれば、使用していたソケットがクローズされる可能性があります。
HTTPプロトコル・ハンドラには、システム・プロパティからアクセスできるいくつかの設定があります。 これには、プロキシ設定やさまざまな他の設定が含まれます。
セキュリティ権限
セキュリティ・マネージャがインストールされていて、メソッドが呼び出されて接続を開こうとすると、呼び出し元は次のいずれかを所有している必要があります:
- 接続先URLのホストとポートの組合せに対する「接続」
SocketPermission
- この要求を許可する
URLPermission
。
自動リダイレクションが有効になっており、この要求が別の宛先にリダイレクトされる場合、呼出し元にはリダイレクト先のホストまたはURLに接続するためのアクセス権も必要です。
- 導入されたバージョン:
- 1.1
- 関連項目:
-
フィールドのサマリー
フィールド修飾子と型フィールド説明protected int
出力時にチャンク・エンコーディング・ストリーミング・モードを使用する場合のチャンク長。protected int
固定長ストリーミング・モードを使用する場合の固定コンテンツ長。protected long
固定長ストリーミング・モードを使用する場合の固定コンテンツ長。static final int
HTTP Status-Code 202: 受け入れられました。static final int
HTTP Status-Code 502: 不正なゲートウェイ。static final int
HTTP Status-Code 405: メソッドが許可されていません。static final int
HTTP Status-Code 400: 不正な要求。static final int
HTTP Status-Code 408: 要求がタイム・アウトしました。static final int
HTTP Status-Code 409: 衝突しています。static final int
HTTP Status-Code 201: 作成されました。static final int
HTTP Status-Code 413: 要求のエンティティが大きすぎます。static final int
HTTP Status-Code 403: 禁止されています。static final int
HTTP Status-Code 504: ゲートウェイがタイム・アウトしました。static final int
HTTP Status-Code 410: 存在しません。static final int
HTTP Status-Code 500: 内部サーバー・エラー。static final int
HTTP Status-Code 411: 長さが必要です。static final int
HTTP Status-Code 301: 永続的に移動されました。static final int
HTTP Status-Code 302: 一時的なリダイレクト。static final int
HTTP Status-Code 300: 複数の選択肢があります。static final int
HTTP Status-Code 204: コンテンツがありません。static final int
HTTP Status-Code 406: 受け入れられません。static final int
HTTP Status-Code 203: 信頼できない情報です。static final int
HTTP Status-Code 404: 見つかりません。static final int
HTTP Status-Code 501: 実装されていません。static final int
HTTP Status-Code 304: 変更されていません。static final int
HTTP Status-Code 200: OKです。static final int
HTTP Status-Code 206: 部分的なコンテンツ。static final int
HTTP Status-Code 402: 支払いの必要があります。static final int
HTTP Status-Code 412: 前提条件が満たされていません。static final int
HTTP Status-Code 407: プロキシ認証が必要です。static final int
HTTP Status-Code 414: 要求のURIが大きすぎます。static final int
HTTP Status-Code 205: コンテンツをリセットします。static final int
HTTP Status-Code 303: ほかを参照してください。static final int
非推奨。間違ったフィールドであり、存在するべきではありません。static final int
HTTP Status-Code 401: 承認されていません。static final int
HTTP Status-Code 503: サービスが使用不可能です。static final int
HTTP Status-Code 415: サポートされていないメディア・タイプです。static final int
HTTP Status-Code 305: プロキシを使用します。static final int
HTTP Status-Code 505: サポートされていないHTTPバージョンです。protected boolean
true
の場合、プロトコルは自動的にリダイレクトに従います。protected String
HTTPメソッド(GET、POST、PUTなど)です。protected int
3桁のHTTPステータス・コードを表すint
です。protected String
HTTP応答メッセージです。クラス java.net.URLConnectionで宣言されたフィールド
allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明abstract void
サーバーへの要求が近い将来発生しそうにないことを示します。接続が失敗したが、それにもかかわらずサーバーから有用なデータを送信されてきた場合に、エラー・ストリームを返します。static boolean
HTTPリダイレクト(3xx)に自動的に従うかどうかを示すboolean
を返します。getHeaderField
(int n) n
番目のヘッダー・フィールドの値を返します。getHeaderFieldKey
(int n) n
番目のヘッダー・フィールドのキーを返します。boolean
このHttpURLConnection
のinstanceFollowRedirects
フィールドの値を返します。接続先のホストとポートに接続するために必要なアクセス権を表すSocketPermission
オブジェクトを返します。要求メソッドを取得します。int
HTTP応答メッセージからステータス・コードを取得します。サーバーから応答コードとともにHTTP応答メッセージが返された場合、そのメッセージを取得します。void
このHttpURLConnection
のHTTPプロトコルで認証がリクエストされたときに使用するAuthenticator
を供給します。void
setChunkedStreamingMode
(int chunklen) このメソッドを使用すれば、コンテンツ長があらかじめわかっていない場合に、内部バッファを使用しないHTTP要求本体のストリーミングを有効にできます。void
setFixedLengthStreamingMode
(int contentLength) このメソッドを使用すれば、コンテンツ長があらかじめわかっている場合に、内部バッファを使用しないHTTP要求本体のストリーミングを有効にすることができます。void
setFixedLengthStreamingMode
(long contentLength) このメソッドを使用すれば、コンテンツ長があらかじめわかっている場合に、内部バッファを使用しないHTTP要求本体のストリーミングを有効にすることができます。static void
setFollowRedirects
(boolean set) HTTPリダイレクト(応答コード3xxの要求)に、このクラスが自動的に従うべきかどうかを設定します。void
setInstanceFollowRedirects
(boolean followRedirects) HTTPリダイレクト(応答コード3xxの要求)を、このHttpURLConnection
インスタンスで自動的に従うかどうかを設定します。void
setRequestMethod
(String method) URL要求のメソッドを次のどれかに設定します。GET POST HEAD OPTIONS PUT DELETE TRACEのうち、どれが有効であるかはプロトコルの制限によって決まります。abstract boolean
接続でプロキシを使用するかどうかを表します。クラス java.net.URLConnectionで宣言されたメソッド
addRequestProperty, connect, getAllowUserInteraction, getConnectTimeout, getContent, getContent, getContentEncoding, getContentLength, getContentLengthLong, getContentType, getDate, getDefaultAllowUserInteraction, getDefaultRequestProperty, getDefaultUseCaches, getDefaultUseCaches, getDoInput, getDoOutput, getExpiration, getFileNameMap, getHeaderField, getHeaderFieldDate, getHeaderFieldInt, getHeaderFieldLong, getHeaderFields, getIfModifiedSince, getInputStream, getLastModified, getOutputStream, getReadTimeout, getRequestProperties, getRequestProperty, getURL, getUseCaches, guessContentTypeFromName, guessContentTypeFromStream, setAllowUserInteraction, setConnectTimeout, setContentHandlerFactory, setDefaultAllowUserInteraction, setDefaultRequestProperty, setDefaultUseCaches, setDefaultUseCaches, setDoInput, setDoOutput, setFileNameMap, setIfModifiedSince, setReadTimeout, setRequestProperty, setUseCaches, toString
-
フィールド詳細
-
method
protected String methodHTTPメソッド(GET、POST、PUTなど)です。 -
chunkLength
protected int chunkLength出力時にチャンク・エンコーディング・ストリーミング・モードを使用する場合のチャンク長。 値-1
は、出力時のチャンク・エンコーディングが無効であることを意味します。- 導入されたバージョン:
- 1.5
-
fixedContentLength
protected int fixedContentLength固定長ストリーミング・モードを使用する場合の固定コンテンツ長。 値-1
は、出力時の固定長ストリーミング・モードが無効であることを意味します。ノート: コンテンツの長さをより長く設定できるため、このフィールドの代わりに
fixedContentLengthLong
が推奨されています。- 導入されたバージョン:
- 1.5
-
fixedContentLengthLong
protected long fixedContentLengthLong固定長ストリーミング・モードを使用する場合の固定コンテンツ長。 値-1
は、出力時の固定長ストリーミング・モードが無効であることを意味します。- 導入されたバージョン:
- 1.7
-
responseCode
protected int responseCode3桁のHTTPステータス・コードを表すint
です。- 1xx: 情報
- 2xx: 成功
- 3xx: リダイレクション
- 4xx: クライアント・エラー
- 5xx: サーバー・エラー
-
responseMessage
protected String responseMessageHTTP応答メッセージです。 -
instanceFollowRedirects
protected boolean instanceFollowRedirectstrue
の場合、プロトコルは自動的にリダイレクトに従います。false
の場合、プロトコルは自動的にはリダイレクトに従いません。このフィールドは、
setInstanceFollowRedirects
メソッドによって設定されます。 その値は、getInstanceFollowRedirects
メソッドによって返されます。HttpURLConnection作成時、デフォルト値はstatic followRedirectsの値に基づきます。
-
HTTP_OK
public static final int HTTP_OKHTTP Status-Code 200: OKです。- 関連項目:
-
HTTP_CREATED
public static final int HTTP_CREATEDHTTP Status-Code 201: 作成されました。- 関連項目:
-
HTTP_ACCEPTED
public static final int HTTP_ACCEPTEDHTTP Status-Code 202: 受け入れられました。- 関連項目:
-
HTTP_NOT_AUTHORITATIVE
public static final int HTTP_NOT_AUTHORITATIVEHTTP Status-Code 203: 信頼できない情報です。- 関連項目:
-
HTTP_NO_CONTENT
public static final int HTTP_NO_CONTENTHTTP Status-Code 204: コンテンツがありません。- 関連項目:
-
HTTP_RESET
public static final int HTTP_RESETHTTP Status-Code 205: コンテンツをリセットします。- 関連項目:
-
HTTP_PARTIAL
public static final int HTTP_PARTIALHTTP Status-Code 206: 部分的なコンテンツ。- 関連項目:
-
HTTP_MULT_CHOICE
public static final int HTTP_MULT_CHOICEHTTP Status-Code 300: 複数の選択肢があります。- 関連項目:
-
HTTP_MOVED_PERM
public static final int HTTP_MOVED_PERMHTTP Status-Code 301: 永続的に移動されました。- 関連項目:
-
HTTP_MOVED_TEMP
public static final int HTTP_MOVED_TEMPHTTP Status-Code 302: 一時的なリダイレクト。- 関連項目:
-
HTTP_SEE_OTHER
public static final int HTTP_SEE_OTHERHTTP Status-Code 303: ほかを参照してください。- 関連項目:
-
HTTP_NOT_MODIFIED
public static final int HTTP_NOT_MODIFIEDHTTP Status-Code 304: 変更されていません。- 関連項目:
-
HTTP_USE_PROXY
public static final int HTTP_USE_PROXYHTTP Status-Code 305: プロキシを使用します。- 関連項目:
-
HTTP_BAD_REQUEST
public static final int HTTP_BAD_REQUESTHTTP Status-Code 400: 不正な要求。- 関連項目:
-
HTTP_UNAUTHORIZED
public static final int HTTP_UNAUTHORIZEDHTTP Status-Code 401: 承認されていません。- 関連項目:
-
HTTP_PAYMENT_REQUIRED
public static final int HTTP_PAYMENT_REQUIREDHTTP Status-Code 402: 支払いの必要があります。- 関連項目:
-
HTTP_FORBIDDEN
public static final int HTTP_FORBIDDENHTTP Status-Code 403: 禁止されています。- 関連項目:
-
HTTP_NOT_FOUND
public static final int HTTP_NOT_FOUNDHTTP Status-Code 404: 見つかりません。- 関連項目:
-
HTTP_BAD_METHOD
public static final int HTTP_BAD_METHODHTTP Status-Code 405: メソッドが許可されていません。- 関連項目:
-
HTTP_NOT_ACCEPTABLE
public static final int HTTP_NOT_ACCEPTABLEHTTP Status-Code 406: 受け入れられません。- 関連項目:
-
HTTP_PROXY_AUTH
public static final int HTTP_PROXY_AUTHHTTP Status-Code 407: プロキシ認証が必要です。- 関連項目:
-
HTTP_CLIENT_TIMEOUT
HTTP Status-Code 408: 要求がタイム・アウトしました。- 関連項目:
-
HTTP_CONFLICT
public static final int HTTP_CONFLICTHTTP Status-Code 409: 衝突しています。- 関連項目:
-
HTTP_GONE
public static final int HTTP_GONEHTTP Status-Code 410: 存在しません。- 関連項目:
-
HTTP_LENGTH_REQUIRED
public static final int HTTP_LENGTH_REQUIREDHTTP Status-Code 411: 長さが必要です。- 関連項目:
-
HTTP_PRECON_FAILED
public static final int HTTP_PRECON_FAILEDHTTP Status-Code 412: 前提条件が満たされていません。- 関連項目:
-
HTTP_ENTITY_TOO_LARGE
public static final int HTTP_ENTITY_TOO_LARGEHTTP Status-Code 413: 要求のエンティティが大きすぎます。- 関連項目:
-
HTTP_REQ_TOO_LONG
public static final int HTTP_REQ_TOO_LONGHTTP Status-Code 414: 要求のURIが大きすぎます。- 関連項目:
-
HTTP_UNSUPPORTED_TYPE
public static final int HTTP_UNSUPPORTED_TYPEHTTP Status-Code 415: サポートされていないメディア・タイプです。- 関連項目:
-
HTTP_SERVER_ERROR
@Deprecated public static final int HTTP_SERVER_ERROR非推奨。間違ったフィールドであり、存在するべきではありません。HTTP Status-Code 500: 内部サーバー・エラー。- 関連項目:
-
HTTP_INTERNAL_ERROR
public static final int HTTP_INTERNAL_ERRORHTTP Status-Code 500: 内部サーバー・エラー。- 関連項目:
-
HTTP_NOT_IMPLEMENTED
public static final int HTTP_NOT_IMPLEMENTEDHTTP Status-Code 501: 実装されていません。- 関連項目:
-
HTTP_BAD_GATEWAY
public static final int HTTP_BAD_GATEWAYHTTP Status-Code 502: 不正なゲートウェイ。- 関連項目:
-
HTTP_UNAVAILABLE
public static final int HTTP_UNAVAILABLEHTTP Status-Code 503: サービスが使用不可能です。- 関連項目:
-
HTTP_GATEWAY_TIMEOUT
public static final int HTTP_GATEWAY_TIMEOUTHTTP Status-Code 504: ゲートウェイがタイム・アウトしました。- 関連項目:
-
HTTP_VERSION
public static final int HTTP_VERSIONHTTP Status-Code 505: サポートされていないHTTPバージョンです。- 関連項目:
-
-
コンストラクタの詳細
-
HttpURLConnection
protected HttpURLConnection(URL u) HttpURLConnectionのコンストラクタです。- パラメータ:
u
- URL
-
-
メソッドの詳細
-
setAuthenticator
public void setAuthenticator(Authenticator auth) このHttpURLConnection
のHTTPプロトコルで認証がリクエストされたときに使用するAuthenticator
を供給します。 オーセンティケータが指定されていない場合は、「デフォルト・オーセンティケータ」が使用されます。- 実装要件:
- このメソッドのデフォルトの動作は、無条件に
UnsupportedOperationException
をスローすることです。 特定のHttpURLConnection
インスタンスのAuthenticator
の供給をサポートするHttpURLConnection
の具体的な実装では、このメソッドをオーバーライドして別の動作を実装する必要があります。 - 実装上のノート:
- 認証方式によっては、提供されたオーセンティケータを使用してパスワードを取得する必要があります。 たとえば、サードパーティのセキュリティ・ライブラリに依存する実装では、これらのライブラリがそうするように構成されている場合でも、デフォルトの認証プロバイダが呼び出されることがあります。 同様に、トランスペアレントなNTLM認証をサポートする実装では、提供された認証プログラムを呼び出す前に、まずシステムのユーザー資格証明を使用して接続を試みる可能性があります。
ただし、オーセンティケータが具体的に提供されている場合は、同じAuthenticator
インスタンスを共有するHttpURLConnection
インスタンスに対してのみ基本接続が再利用され、キャッシュされている場合は同じAuthenticator
を共有するHttpURLConnection
に対してのみ再利用できます。 - パラメータ:
auth
- このHttpURLConnection
によって使用されるべきAuthenticator
。- 例外:
UnsupportedOperationException
- Authenticatorの設定が基本となる実装でサポートされていない場合。IllegalStateException
- URLConnectionがすでに接続されている場合。NullPointerException
- 提供されたauth
がnull
の場合。- 導入されたバージョン:
- 9
-
getHeaderFieldKey
public String getHeaderFieldKey(int n) n
番目のヘッダー・フィールドのキーを返します。 実装によっては、0
番目のヘッダー・フィールドを特別なものとして、つまりHTTPサーバーから返されたステータス行として扱うことがあります。 この場合、getHeaderField(0)
はそのステータス行を返しますが、getHeaderFieldKey(0)
はnullを返します。- オーバーライド:
getHeaderFieldKey
、クラスURLConnection
- パラメータ:
n
- インデックス。ここでn >=0
です。- 戻り値:
n
番目のヘッダー・フィールドのキー。キーが存在しない場合はnull
。
-
setFixedLengthStreamingMode
public void setFixedLengthStreamingMode(int contentLength) このメソッドを使用すれば、コンテンツ長があらかじめわかっている場合に、内部バッファを使用しないHTTP要求本体のストリーミングを有効にすることができます。アプリケーションが、指定されたコンテンツ長を超えるデータを書き込もうとしたり、指定された量の書込みを終える前にOutputStreamをクローズしたりすると、例外がスローされます。
出力ストリーム処理を有効にした場合、認証とリダイレクションを自動的に処理することはできません。 認証またはリダイレクションが必要とされる場合には、応答の読取り時にHttpRetryExceptionがスローされます。 この例外を調べれば、エラーの詳細がわかります。
このメソッドは、URLConnectionの接続前に呼び出してください。
ノート: コンテンツの長さをより長く設定できるため、このメソッドの代わりに
setFixedLengthStreamingMode(long)
が推奨されています。- パラメータ:
contentLength
- OutputStreamに書き込まれるバイト数。- 例外:
IllegalStateException
- URLConnectionがすでに接続されている場合、または別のストリーミング・モードがすでに有効になっている場合。IllegalArgumentException
- 0より小さいコンテンツ長が指定された場合。- 導入されたバージョン:
- 1.5
- 関連項目:
-
setFixedLengthStreamingMode
public void setFixedLengthStreamingMode(long contentLength) このメソッドを使用すれば、コンテンツ長があらかじめわかっている場合に、内部バッファを使用しないHTTP要求本体のストリーミングを有効にすることができます。アプリケーションが、指定されたコンテンツ長を超えるデータを書き込もうとしたり、指定された量の書込みを終える前にOutputStreamをクローズしたりすると、例外がスローされます。
出力ストリーム処理を有効にした場合、認証とリダイレクションを自動的に処理することはできません。 認証またはリダイレクションが必要とされる場合には、応答の読取り時にHttpRetryExceptionがスローされます。 この例外を調べれば、エラーの詳細がわかります。
このメソッドは、URLConnectionの接続前に呼び出してください。
このメソッドを呼び出して設定されたコンテンツの長さは、
setFixedLengthStreamingMode(int)
によって設定されたどの値よりも優先されます。- パラメータ:
contentLength
- OutputStreamに書き込まれるバイト数。- 例外:
IllegalStateException
- URLConnectionがすでに接続されている場合、または別のストリーミング・モードがすでに有効になっている場合。IllegalArgumentException
- 0より小さいコンテンツ長が指定された場合。- 導入されたバージョン:
- 1.7
-
setChunkedStreamingMode
public void setChunkedStreamingMode(int chunklen) このメソッドを使用すれば、コンテンツ長があらかじめわかっていない場合に、内部バッファを使用しないHTTP要求本体のストリーミングを有効にできます。 このモードでは、要求本体の送信時にチャンク転送エンコーディングが使用されます。 すべてのHTTPサーバーがこのモードをサポートしているわけではないので注意してください。出力ストリーム処理を有効にした場合、認証とリダイレクションを自動的に処理することはできません。 認証またはリダイレクションが必要とされる場合には、応答の読取り時にHttpRetryExceptionがスローされます。 この例外を調べれば、エラーの詳細がわかります。
このメソッドは、URLConnectionの接続前に呼び出してください。
- パラメータ:
chunklen
−各チャンク内に書き込むバイト数。 chunklenが0以下の場合はデフォルト値が使用される。- 例外:
IllegalStateException
- URLConnectionがすでに接続されている場合、または別のストリーミング・モードがすでに有効になっている場合。- 導入されたバージョン:
- 1.5
- 関連項目:
-
getHeaderField
public String getHeaderField(int n) n
番目のヘッダー・フィールドの値を返します。 実装によっては、0
番目のヘッダー・フィールドを特別なものとして、つまりHTTPサーバーから返されたステータス行として扱うことがあります。このメソッドと
getHeaderFieldKey
メソッドを組み合わせて使用すると、メッセージ内のすべてのヘッダーを反復できます。- オーバーライド:
getHeaderField
、クラスURLConnection
- パラメータ:
n
- インデックス。ここでn>=0
です。- 戻り値:
n
番目のヘッダー・フィールドの値。値が存在しない場合はnull
。- 関連項目:
-
setFollowRedirects
public static void setFollowRedirects(boolean set) HTTPリダイレクト(応答コード3xxの要求)に、このクラスが自動的に従うべきかどうかを設定します。 デフォルトはtrueです。 アプレットはこの変数を変更できません。セキュリティ・マネージャが存在する場合、この操作が許可されるように、このメソッドは最初にセキュリティ・マネージャの
checkSetFactory
メソッドを呼び出します。 この結果、SecurityExceptionがスローされることがあります。- パラメータ:
set
- HTTPリダイレクトに従うかどうかを示すboolean
。- 例外:
SecurityException
- セキュリティ・マネージャが存在し、そのcheckSetFactory
メソッドでこの操作が許可されていない場合。- 関連項目:
-
getFollowRedirects
public static boolean getFollowRedirects()HTTPリダイレクト(3xx)に自動的に従うかどうかを示すboolean
を返します。- 戻り値:
- HTTPリダイレクトに自動的に従うべきである場合は
true
、そうでない場合はfalse
。 - 関連項目:
-
setInstanceFollowRedirects
public void setInstanceFollowRedirects(boolean followRedirects) HTTPリダイレクト(応答コード3xxの要求)を、このHttpURLConnection
インスタンスで自動的に従うかどうかを設定します。デフォルトがtrueである、followRedirectsからのデフォルト値。
- パラメータ:
followRedirects
- HTTPリダイレクトに従うかどうかを示すboolean
。- 導入されたバージョン:
- 1.3
- 関連項目:
-
getInstanceFollowRedirects
public boolean getInstanceFollowRedirects()このHttpURLConnection
のinstanceFollowRedirects
フィールドの値を返します。- 戻り値:
- この
HttpURLConnection
のinstanceFollowRedirects
フィールドの値。 - 導入されたバージョン:
- 1.3
- 関連項目:
-
setRequestMethod
public void setRequestMethod(String method) throws ProtocolException URL要求のメソッドを次のどれかに設定します。- GET
- POST
- HEAD
- OPTIONS
- PUT
- DELETE
- TRACE
- パラメータ:
method
−HTTPメソッド- 例外:
ProtocolException
−メソッドをリセットできない場合、または要求されたメソッドがHTTPで有効でない場合。SecurityException
- セキュリティ・マネージャが設定され、メソッドが「TRACE」であるが、「allowHttpTrace」のNetPermissionが許可されない場合。- 関連項目:
-
getRequestMethod
public String getRequestMethod()要求メソッドを取得します。- 戻り値:
- HTTP要求メソッド
- 関連項目:
-
getResponseCode
public int getResponseCode() throws IOExceptionHTTP応答メッセージからステータス・コードを取得します。 たとえば、次のステータス行が返されたとします。HTTP/1.0 200 OK HTTP/1.0 401 Unauthorized
これは、200と401をそれぞれ返します。 応答からコードを認識できない場合(つまり、その応答が有効なHTTPではない場合)、-1を返します。- 戻り値:
- HTTPステータス・コードまたは -1
- 例外:
IOException
- サーバーへの接続でエラーが発生した場合。
-
getResponseMessage
public String getResponseMessage() throws IOExceptionサーバーから応答コードとともにHTTP応答メッセージが返された場合、そのメッセージを取得します。 次のような応答があったとします。HTTP/1.0 200 OK HTTP/1.0 404 Not Found
文字列「OK」と「Not Found」をそれぞれ抽出します。 応答から何も認識できなかった場合(結果が有効なHTTPではなかった場合)、nullを返します。- 戻り値:
- HTTP応答メッセージまたは
null
- 例外:
IOException
- サーバーへの接続でエラーが発生した場合。
-
disconnect
public abstract void disconnect()サーバーへの要求が近い将来発生しそうにないことを示します。 disconnect()の呼出しが、このHttpURLConnectionインスタンスがほかの要求用として再利用可能であることを意味することのないようにしてください。 -
usingProxy
public abstract boolean usingProxy()接続でプロキシを使用するかどうかを表します。 このメソッドは、接続が進行中であるかプロキシを経由したことがわかっている場合はtrue
を返し、接続がプロキシを経由しない場合やプロキシの使用を判断できない場合はfalse
を返します。- 戻り値:
- この接続がプロキシを使用するかどうかを示すboolean。
-
getPermission
public Permission getPermission() throws IOException接続先のホストとポートに接続するために必要なアクセス権を表すSocketPermission
オブジェクトを返します。- オーバーライド:
getPermission
、クラスURLConnection
- 戻り値:
- 接続先のホストとポートに接続するために必要なアクセス権を表す
SocketPermission
オブジェクト。 - 例外:
IOException
- アクセス権の処理中にエラーが発生した場合。
-
getErrorStream
public InputStream getErrorStream()接続が失敗したが、それにもかかわらずサーバーから有用なデータを送信されてきた場合に、エラー・ストリームを返します。 典型的な例としては、HTTPサーバーが404で応答し、それによって接続内でFileNotFoundExceptionがスローされたが、そのサーバーから対処策を含むHTMLヘルプ・ページが送信されてきた、といった場合です。このメソッドを呼び出しても、接続は開始されません。 接続が確立されなかった場合、接続中にサーバーでエラーが発生しなかった場合、またはサーバーでエラーが発生したがエラー・データは送信されなかった場合には、このメソッドはnullを返します。 これはデフォルトです。
- 戻り値:
- エラー・ストリームが存在する場合はそのストリーム。エラーが発生しなかった場合、接続が確立されていない場合、またはサーバーが有用なデータを送信しなかった場合はnull。
-