|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjava.net.URLConnection
java.net.HttpURLConnection
public abstract class HttpURLConnection
HTTP 고유의 기능을 지원하는 URLConnection 입니다. 상세한 것에 대하여는,스펙을 참조해 주세요.
단일의 요구를 실시하려면 개개의 HttpURLConnection 인스턴스가 사용됩니다만, 그 배후의 HTTP 서버에의 네트워크 접속은, 다른 인스턴스와 투과적으로 공유될 가능성이 있습니다. 요구 후, HttpURLConnection 의 InputStream 또는 OutputStream 상에서 close() 메소드를 호출하면(자), 그 인스턴스에 관련지을 수 있고 있던 네트워크 자원이 해제될 가능성이 있습니다만, 공유되고 있는 지속 접속에의 영향은 전혀 없습니다. disconnect() 메소드를 호출했을 경우, 지속 접속이 그 시점에서 IDLE 상태가 되어 있으면, 사용하고 있던 소켓이 클로즈 될 가능성이 있습니다.
disconnect()
필드의 개요 | |
---|---|
protected int |
chunkLength
출력시에 체크엔코딘그스트리밍모드를 사용하는 경우의 체크장. |
protected int |
fixedContentLength
고정장 스트리밍 모드를 사용하는 경우의 고정 컨텐츠장. |
static int |
HTTP_ACCEPTED
HTTP Status-Code 202:받아들여졌습니다. |
static int |
HTTP_BAD_GATEWAY
HTTP Status-Code 502:부정한 게이트웨이. |
static int |
HTTP_BAD_METHOD
HTTP Status-Code 405:메소드가 허가되고 있지 않습니다. |
static int |
HTTP_BAD_REQUEST
HTTP Status-Code 400:부정한 요구. |
static int |
HTTP_CLIENT_TIMEOUT
HTTP Status-Code 408:요구가 타임 아웃 했습니다. |
static int |
HTTP_CONFLICT
HTTP Status-Code 409:충돌하고 있습니다. |
static int |
HTTP_CREATED
HTTP Status-Code 201:작성되었습니다. |
static int |
HTTP_ENTITY_TOO_LARGE
HTTP Status-Code 413:요구의 엔티티가 너무 큽니다. |
static int |
HTTP_FORBIDDEN
HTTP Status-Code 403:금지되고 있습니다. |
static int |
HTTP_GATEWAY_TIMEOUT
HTTP Status-Code 504:게이트웨이가 타임 아웃 했습니다. |
static int |
HTTP_GONE
HTTP Status-Code 410:존재하지 않습니다. |
static int |
HTTP_INTERNAL_ERROR
HTTP Status-Code 500:내부 서버 에러. |
static int |
HTTP_LENGTH_REQUIRED
HTTP Status-Code 411:길이가 필요합니다. |
static int |
HTTP_MOVED_PERM
HTTP Status-Code 301:영속적으로 이동되었습니다. |
static int |
HTTP_MOVED_TEMP
HTTP Status-Code 302:일시적인 리다이렉트(redirect). |
static int |
HTTP_MULT_CHOICE
HTTP Status-Code 300:복수의 선택사항이 있습니다. |
static int |
HTTP_NO_CONTENT
HTTP Status-Code 204:컨텐츠가 없습니다. |
static int |
HTTP_NOT_ACCEPTABLE
HTTP Status-Code 406:받아들여지지 않습니다. |
static int |
HTTP_NOT_AUTHORITATIVE
HTTP Status-Code 203:신뢰할 수 없는 정보입니다. |
static int |
HTTP_NOT_FOUND
HTTP Status-Code 404:발견되지 않습니다. |
static int |
HTTP_NOT_IMPLEMENTED
HTTP Status-Code 501:구현되고 있지 않습니다. |
static int |
HTTP_NOT_MODIFIED
HTTP Status-Code 304:변경되고 있지 않습니다. |
static int |
HTTP_OK
HTTP Status-Code 200: OK 입니다. |
static int |
HTTP_PARTIAL
HTTP Status-Code 206:부분적인 컨텐츠. |
static int |
HTTP_PAYMENT_REQUIRED
HTTP Status-Code 402:지불의 필요가 있습니다. |
static int |
HTTP_PRECON_FAILED
HTTP Status-Code 412:전제 조건이 채워지고 있지 않습니다. |
static int |
HTTP_PROXY_AUTH
HTTP Status-Code 407:프록시 인증이 필요합니다. |
static int |
HTTP_REQ_TOO_LONG
HTTP Status-Code 414:요구의 URI 가 너무 큽니다. |
static int |
HTTP_RESET
HTTP Status-Code 205:컨텐츠를 리셋 합니다. |
static int |
HTTP_SEE_OTHER
HTTP Status-Code 303:외를 참조해 주세요. |
static int |
HTTP_SERVER_ERROR
추천 되고 있지 않습니다. 잘못한 필드이며, 존재해야 하는 것이어 선. |
static int |
HTTP_UNAUTHORIZED
HTTP Status-Code 401:승인되고 있지 않습니다. |
static int |
HTTP_UNAVAILABLE
HTTP Status-Code 503:서비스가 사용 불가능합니다. |
static int |
HTTP_UNSUPPORTED_TYPE
HTTP Status-Code 415:지원되어 있지 않은 미디어 타입입니다. |
static int |
HTTP_USE_PROXY
HTTP Status-Code 305:프록시를 사용합니다. |
static int |
HTTP_VERSION
HTTP Status-Code 505:지원되어 있지 않은 HTTP 버젼입니다. |
protected boolean |
instanceFollowRedirects
true 의 경우, 프로토콜은 자동적으로 리다이렉트(redirect)에 따릅니다. |
protected String |
method
HTTP 메소드 (GET, POST, PUT 등)입니다. |
protected int |
responseCode
3 자리수의 HTTP 상태 코드를 나타내는 int 입니다. |
protected String |
responseMessage
HTTP 응답 메세지입니다. |
클래스 java.net. URLConnection 로부터 상속된 필드 |
---|
allowUserInteraction , connected , doInput , doOutput , ifModifiedSince , url , useCaches |
생성자 의 개요 | |
---|---|
protected |
HttpURLConnection (URL u)
HttpURLConnection 의 생성자 입니다. |
메소드의 개요 | |
---|---|
abstract void |
disconnect ()
서버에의 요구가 가까운 장래 발생 할 것 같지 않은 것을 나타냅니다. |
InputStream |
getErrorStream ()
접속이 실패했지만, 그럼에도 불구하고 서버로부터 유용한 데이터가 송신되어 왔을 경우에, 에러 스트림을 돌려줍니다. |
static boolean |
getFollowRedirects ()
HTTP 리다이렉트(redirect) (3xx)에 자동적으로 따를지 어떨지를 나타내는 boolean 를 돌려줍니다. |
String |
getHeaderField (int n)
n 번째의 헤더 필드의 값을 돌려줍니다. |
long |
getHeaderFieldDate (String name,
long Default)
지정된 필드를 일자로서 구문 분석 한 값을 돌려줍니다. |
String |
getHeaderFieldKey (int n)
n 번째의 헤더 필드의 키를 돌려줍니다. |
boolean |
getInstanceFollowRedirects ()
이 HttpURLConnection 의 instanceFollowRedirects 필드치를 돌려줍니다. |
Permission |
getPermission ()
이 객체가 나타내는 접속을 위해서(때문에) 필요한 액세스권을 나타내는 Permission 객체를 돌려줍니다. |
String |
getRequestMethod ()
요구 메소드를 가져옵니다. |
int |
getResponseCode ()
HTTP 응답 메세지로부터 상태 코드를 가져옵니다. |
String |
getResponseMessage ()
서버로부터 응답 코드와 함께 HTTP 응답 메세지가 돌려주어졌을 경우, 그 메세지를 가져옵니다. |
void |
setChunkedStreamingMode (int chunklen)
이 메소드를 사용하면, 컨텐츠장이 미리 모르는 경우에, 내부 버퍼를 사용하지 않는 HTTP 요구 본체의 스트리밍을 유효하게 할 수가 있습니다. |
void |
setFixedLengthStreamingMode (int contentLength)
이 메소드를 사용하면, 컨텐츠장을 미리 알고 있는 경우에, 내부 버퍼를 사용하지 않는 HTTP 요구 본체의 스트리밍을 유효하게 할 수가 있습니다. |
static void |
setFollowRedirects (boolean set)
HTTP 리다이렉트(redirect) (응답 코드 3xx 의 요구)에, 이 클래스가 자동적으로 따라야할 것인가 어떤가를 설정합니다. |
void |
setInstanceFollowRedirects (boolean followRedirects)
HTTP 리다이렉트(redirect) (응답 코드 3xx 의 요구)를, 이 HttpURLConnection 인스턴스로 자동에 따를지 어떨지를 설정합니다. |
void |
setRequestMethod (String method)
URL 요구의 메소드를 다음의 어떤 것인가로 설정합니다. |
abstract boolean |
usingProxy ()
접속으로 프록시를 사용할지 어떨지를 나타냅니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait |
필드의 상세 |
---|
protected String method
protected int chunkLength
-1
은, 출력시의 체크엔코딘그가 무효라는 점을 의미합니다.
protected int fixedContentLength
-1
은, 출력시의 고정장 스트리밍 모드가 무효라는 점을 의미합니다.
protected int responseCode
int
입니다.
protected String responseMessage
protected boolean instanceFollowRedirects
true
의 경우, 프로토콜은 자동적으로 리다이렉트(redirect)에 따릅니다. false
의 경우, 프로토콜은 자동적으로는 리다이렉트(redirect)에 따르지 않습니다.
이 필드는,setInstanceFollowRedirects
메소드에 의해 설정됩니다. 그 값은,getInstanceFollowRedirects
메소드에 의해 돌려주어집니다.
HttpURLConnection 작성시, 디폴트 값는 static followRedirects 의 값에 근거합니다.
setInstanceFollowRedirects(boolean)
,
getInstanceFollowRedirects()
,
setFollowRedirects(boolean)
public static final int HTTP_OK
public static final int HTTP_CREATED
public static final int HTTP_ACCEPTED
public static final int HTTP_NOT_AUTHORITATIVE
public static final int HTTP_NO_CONTENT
public static final int HTTP_RESET
public static final int HTTP_PARTIAL
public static final int HTTP_MULT_CHOICE
public static final int HTTP_MOVED_PERM
public static final int HTTP_MOVED_TEMP
public static final int HTTP_SEE_OTHER
public static final int HTTP_NOT_MODIFIED
public static final int HTTP_USE_PROXY
public static final int HTTP_BAD_REQUEST
public static final int HTTP_UNAUTHORIZED
public static final int HTTP_PAYMENT_REQUIRED
public static final int HTTP_FORBIDDEN
public static final int HTTP_NOT_FOUND
public static final int HTTP_BAD_METHOD
public static final int HTTP_NOT_ACCEPTABLE
public static final int HTTP_PROXY_AUTH
public static final int HTTP_CLIENT_TIMEOUT
public static final int HTTP_CONFLICT
public static final int HTTP_GONE
public static final int HTTP_LENGTH_REQUIRED
public static final int HTTP_PRECON_FAILED
public static final int HTTP_ENTITY_TOO_LARGE
public static final int HTTP_REQ_TOO_LONG
public static final int HTTP_UNSUPPORTED_TYPE
@Deprecated public static final int HTTP_SERVER_ERROR
public static final int HTTP_INTERNAL_ERROR
public static final int HTTP_NOT_IMPLEMENTED
public static final int HTTP_BAD_GATEWAY
public static final int HTTP_UNAVAILABLE
public static final int HTTP_GATEWAY_TIMEOUT
public static final int HTTP_VERSION
생성자 의 상세 |
---|
protected HttpURLConnection(URL u)
u
- URL메소드의 상세 |
---|
public String getHeaderFieldKey(int n)
n
번째의 헤더 필드의 키를 돌려줍니다. 구현에 따라서는,0
번째의 헤더 필드를 특별한 것으로 해, 즉 HTTP 서버로부터 반환된 상태행으로서 취급하는 일이 있습니다. 그 경우,getHeaderField(0)
는 그 상태행을 돌려줍니다만,getHeaderFieldKey(0)
는 null 를 돌려줍니다.
URLConnection
내의 getHeaderFieldKey
n
- 인덱스. 여기서 n 는 0 이상
n
번째의 헤더 필드의 키. 키가 존재하지 않는 경우는 null
public void setFixedLengthStreamingMode(int contentLength)
어플리케이션이, 지정된 컨텐츠장을 넘는 데이터를 기입하려고 하거나 지정된 양의 기입을 끝내기 전에 OutputStream 를 클로즈 하거나 하면(자), 예외가 throw 됩니다.
출력 스트림 처리를 유효하게 했을 경우, 인증과 리디렉션을 자동적으로 처리할 수 없습니다. 인증 또는 리디렉션이 필요하게 되는 경우에는, 응답의 읽기시에 HttpRetryException 가 throw 됩니다. 이 예외를 조사하면, 에러의 상세를 알 수 있습니다.
이 메소드는, URLConnection 의 접속전에 호출해 주세요.
contentLength
- OutputStream 에 기입해지는 바이트수
IllegalStateException
- URLConnection 가 벌써 접속되고 있는 경우, 또는 다른 스트리밍 모드가 벌써 유효하게 되어 있는 경우
IllegalArgumentException
- 0 보다 작은 컨텐츠장이 지정되었을 경우setChunkedStreamingMode(int)
public void setChunkedStreamingMode(int chunklen)
출력 스트림 처리를 유효하게 했을 경우, 인증과 리디렉션을 자동적으로 처리할 수 없습니다. 인증 또는 리디렉션이 필요하게 되는 경우에는, 응답의 읽기시에 HttpRetryException 가 throw 됩니다. 이 예외를 조사하면, 에러의 상세를 알 수 있습니다.
이 메소드는, URLConnection 의 접속전에 호출해 주세요.
chunklen
- 각 체크내에 기입하는 바이트수. chunklen 가 0 이하의 경우는 디폴트 값가 사용된다
IllegalStateException
- URLConnection 가 벌써 접속되고 있는 경우, 또는 다른 스트리밍 모드가 벌써 유효하게 되어 있는 경우setFixedLengthStreamingMode(int)
public String getHeaderField(int n)
n
번째의 헤더 필드의 값을 돌려줍니다. 구현에 따라서는,0
번째의 헤더 필드를 특별한 것으로 해, 즉 HTTP 서버로부터 반환된 상태행으로서 취급하는 일이 있습니다.
이 메소드와 getHeaderFieldKey
메소드를 조합해 사용하면(자), 메세지내의 모든 헤더를 반복 처리 할 수가 있습니다.
URLConnection
내의 getHeaderField
n
- 인덱스. 여기서 n 는 0 이상
n
번째의 헤더 필드의 값. 값이 존재하지 않는 경우는 null
getHeaderFieldKey(int)
public static void setFollowRedirects(boolean set)
시큐리티 매니저가 존재하는 경우, 이 메소드는 최초로 시큐리티 매니저의 checkSetFactory
메소드를 호출하는 것으로, 이 조작이 허가되고 있는 것을 확인합니다. 이 결과, SecurityException 가 throw 되는 일이 있습니다.
set
- HTTP 리다이렉트(redirect)에 따를지 어떨지를 나타내는 boolean
SecurityException
- 시큐리티 매니저가 존재해, 그 checkSetFactory
메소드가 이 조작을 허가하지 않는 경우SecurityManager.checkSetFactory()
,
getFollowRedirects()
public static boolean getFollowRedirects()
boolean
를 돌려줍니다.
true
, 그렇지 않은 경우는 falsesetFollowRedirects(boolean)
public void setInstanceFollowRedirects(boolean followRedirects)
HttpURLConnection
인스턴스로 자동에 따를지 어떨지를 설정합니다. 디폴트가 true 인, followRedirects 로부터의 디폴트 값
followRedirects
- HTTP 리다이렉트(redirect)에 따를지 어떨지를 나타내는 boolean
instanceFollowRedirects
,
getInstanceFollowRedirects()
public boolean getInstanceFollowRedirects()
HttpURLConnection
의 instanceFollowRedirects
필드치를 돌려줍니다.
HttpURLConnection
의 instanceFollowRedirects
필드치instanceFollowRedirects
,
setInstanceFollowRedirects(boolean)
public void setRequestMethod(String method) throws ProtocolException
method
- HTTP 메소드
ProtocolException
- 메소드를 리셋 할 수 없는 경우, 또는 요구된 메소드가 HTTP 로 유효하지 않은 경우getRequestMethod()
public String getRequestMethod()
setRequestMethod(java.lang.String)
public int getResponseCode() throws IOException
HTTP/1. 0 200 OK HTTP/1. 0 401 Unauthorized이것은, 200 으로 401 을 각각 돌려줍니다. 응답으로부터 코드를 인식할 수 없는 경우 (즉, 그 응답이 유효한 HTTP 가 아닌 경우),-1 를 돌려줍니다.
IOException
- 서버에의 접속으로 에러가 발생했을 경우public String getResponseMessage() throws IOException
HTTP/1. 0 200 OK HTTP/1. 0 404 Not Found캐릭터 라인 「OK」와「Not Found」를 각각 추출합니다. 응답으로부터 아무것도 인식할 수 없었던 경우 (결과가 유효한 HTTP 는 아니었던 경우), null 를 돌려줍니다.
null
IOException
- 서버에의 접속으로 에러가 발생했을 경우public long getHeaderFieldDate(String name, long Default)
URLConnection
의 기술:
이 형식의 getHeaderField
가 존재하고 있는 것은, 일부의 접속 타입 (http-ng
등)이 사전에 구문 분석 된 헤더를 가지기 때문입니다. 그러한 접속 타입의 클래스는, 이 메소드를 오버라이드(override) 하는 것으로 구문 분석을 회피할 수가 있습니다.
URLConnection
내의 getHeaderFieldDate
name
- 헤더 필드의 이름Default
- 디폴트 값
Default
인수의 값이 반환된다public abstract void disconnect()
public abstract boolean usingProxy()
public Permission getPermission() throws IOException
URLConnection
의 기술:java.security.AllPermission
를 돌려줍니다. 서브 클래스에서는, URL 에 접속하기 위해서 필요한 액세스권을 가장 적절히 나타내는 액세스권을 돌려주도록(듯이), 이 메소드를 오버라이드(override) 합니다. 예를 들어,file:
URL 를 나타내는 URLConnection
에서는,java.io.FilePermission
객체가 돌려주어집니다.
반환되는 액세스권은, 접속 상태에 의존할 가능성이 있습니다. 예를 들어, 접속전의 액세스권은, 접속 후의 액세스권과는 다를 가능성이 있습니다. 예를 들어, foo.com 라고 하는 HTTP 서버로, 접속을 다른 호스트 bar.com 에 리다이렉트(redirect) 하고 있다고 합니다. 접속하기 전에 connection 에 의해 반환되는 액세스권은, foo.com 에의 접속에 필요한 액세스권입니다. 한편, 접속의 나중에 반환되는 액세스권은, bar.com 에의 액세스권이 됩니다.
액세스권의 일반적인 사용 목적은 2 개 있습니다. URLConnection 경유로 취득된 객체의 캐쉬를 보호하는 것으로, 수신자가 특정의 URL 에 대해 알 권리를 체크하는 것입니다. 최초의 경우, 액세스권은 객체를 취득한 후에 취득됩니다. 예를 들어, HTTP 접속의 경우, 이것은, 데이터의 최종적인 취득원이 된 호스트에게 접속하기 위한 액세스권을 나타냅니다. 2 번째의 경우, 액세스권은 접속전에 취득 및 테스트됩니다.
URLConnection
내의 getPermission
IOException
- 액세스권의 처리에 네트워크 또는 파일 입출력이 필요한 때에, 처리중에 예외가 발생했을 경우public InputStream getErrorStream()
이 메소드를 호출해도, 접속은 개시되지 않습니다. 접속이 확립되지 않았던 경우, 접속중에 서버로 에러가 발생하지 않았던 경우, 또는 서버로 에러가 발생했지만 에러 데이터는 송신되지 않았던 경우에는, 이 메소드는 null 를 돌려줍니다. 이것이 디폴트입니다.
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.