GnuSmalltalkUsersGuide:BaseChapter 115
- NetClients.URL
NetClients.URL
네임스페이스 Smalltalk.NetClients에 정의됨
슈퍼클래스: Object
범주: NetClients-URIResolver
- Copyright (c) Kazuki Yasumatsu, 1995. All rights reserved.
NetClients.URL 클래스: URLs 인코딩하기
decode: aString
text/x-www-form-urlencoded String 을 text/plain String로 디코딩하라.
encode: anURL
text/plain 를 text/x-www-form-urlencoded String (안에 %가 많이 포함된)으로 인코딩하라.
initialize
수신자의 클래스 변수를 초기화하라..
NetClients.URL 클래스: 인스턴스 생성
fromString: aString
주어진 URL을 파싱하고 그것을 기반으로 URL 객체를 응답하라.
new
'blank' URL을 응답하라.
scheme: schemeString host: hostString port: portNumber path: pathString
인자로서 전달된 모든 부분으로부터 만들어진 URL 객체를 응답하라.
scheme: schemeString path: pathString
인자로서 전달된 모든 부분으로부터 만들어진 URL 객체를 응답하라.
scheme: schemeString username: userString password: passwordString host: hostString port: portNumber path: pathString
인자로서 전달된 모든 부분으로부터 만들어진 URL 객체를 응답하라.
NetClients.URL: 접근하기
decodedFields
폼 필드를 Dictionary로 변환하고, URL에서 물음표를 찾을 수 없을 경우 nil을 응답하라.
decodedFile
URL에서 파일 부분을 응답하고 x-www-form-urlencoded 포맷로부터 디코딩하라.
decodedFragment
URL에서 fragment 부분을 응답하고 x-www-form-urlencoded 포맷으로부터 디코딩하라.
fragment
URL의 fragment 부분을 응답하고 x-www-form-urlencoded 포맷에 남겨두어라.
fragment: aString
URL의 fragment 부분을 설정하되 이는 x-www-form-urlencoded 포맷으로 되어 있어야 한다.
fullRequestString
URL에 해당하는 전체 요청 문자열을 응답하라. 쿼리 데이터가 POST 요청을 통해 전송될 때에도 인쇄된다는 점을 제외하면 이는 웹 브라우저의 주소 바(address bar)에 URL이 어떻게 인쇄되는지에 해당한다.
hasPostData
URL이 쿼리 부분을 갖고 있지만 URL의 부분이 아니라 HTTP POST 요청에 해당하는지를 응답하라 (HTTP GET 요청에서와 마찬가지로).
hasPostData: aBoolean
URL의 쿼리 부분이 실제로 HTTP POST에 대한 데이터이고 URL의 일부가 아닌지를 응답하라 (HTTP GET 요청에서와 마찬가지로).
host
URL의 호스트 부분을 응답하라.
host: aString
URL의 호스트 부분을 aString으로 설정하라.
newsGroup
수신자가 nntp url인 경우 뉴스 그룹(news group)을 리턴하라.
password
URL의 비밀번호 부분을 응답하라.
password: aString
URL의 비밀번호 부분을 aString으로 설정하라.
path
URL의 경로 부분을 응답하라.
path: aString
URL의 경로 부분을 aString으로 설정하라.
port
URL의 포트 번호 부분을 응답하라.
port: anInteger
URL의 포트 번호 부분을 anInteger로 설정하라.
postData
URL이 쿼리 부분이 있고 HTTP POST 요청을 위해 존재할 경우 그 부분을 응답하라. 그 외의 경우 nil을 응답하라.
postData: aString
HTTP POST 요청을 통해 전송되도록 되어 있는 URL 일부 데이터를 연관시키고 응답하라.
query
URL에 연관된 쿼리 데이터를 응답하라.
query: aString
URL에 연관된 쿼리 데이터를 aString으로 설정하라.
requestString
HTTP 스트림에서 전송되는 것처럼 URL을 응답하라 (즉, 경로와 쿼리 데이터인데, 후자는 HTTP POST 요청으로 전송될 때에만 해당).
scheme
URL의 스킴(scheme)을 응답하라.
scheme: aString
URL의 스킴을 aString으로 설정하라.
username
URL의 사용자명 부분을 응답하라.
username: aString
URL의 사용자명 부분을 aString으로 설정하라.
NetClients.URL: 비교하기
= anURL
두 개의 URL이 같은지를 응답하라. 파일과 앵커(anchor)는 full 8-bit ASCII로 변환되고 (urlencoded와 반대), 비교는 대 · 소문자 민감하게 이루어진다; 반면 프로토콜과 호스트는 대 · 소문자 관계없이 비교된다.
hash
수신자에 대한 해시값을 응답하라.
NetClients.URL: 복사하기
copyWithoutAuxiliaryParts
URL의 fragment와 쿼리 부분이 제거된 수신자의 복사본을 응답하라.
copyWithoutFragment
URL의 fragment 부분이 제거된 수신자의 복사본을 응답하라.
postCopy
모든 변수는 URL 객체가 복사될 때 복사된다.
NetClients.URL: 초기화하기-해제하기
initialize
객체를 일관된 상태로 초기화하라.
NetClients.URL: 인쇄하기
printOn: stream
주어진 스트림 상에 URL의 표현을 인쇄하라.
NetClients.URL: 아직 분류되지 않음
contents
해당 설명 없음.
readStream
해당 설명 없음.
NetClients.URL: 검사하기
canCache
URL이 캐시처리 가능한지 응답하라. 현재 구현은 파일 URLs를 캐시처리 불가능하지만 그 외의 것은 캐시처리 가능한 것으로 간주한다.
hasFragment
URL이 리소스의 특정 fragment(앵커)를 가리키는지 응답하라.
hasQuery
URL이 리소스를 복구할 때 제출될 쿼리 인자를 포함하는지 응답하라.
isFileScheme
URL이 파일 URL인지를 응답하라.
isFragmentOnly
URL이 그것이 참조하는 리소스의 특정 fragment(앵커) 이름만 포함하는지를 응답하라.
NetClients.URL: 유틸리티
construct: anURL
수신자가 표현하는 기본 경로(base path)와 상대적 URL an URL을 기반으로 절대 URL을 구성하라.