golang의 넷/url 패키지

7477 단어 packageGogolangpkg

package url


import "net/url"
url 패키지는 URL을 분석하고 조회의 일호를 실현했다. RFC 3986 참조.

Index

  • func QueryEscape(s string) string
  • func QueryUnescape(s string) (string, error)
  • type Error
  • func (e *Error) Error() string
  • type EscapeError
  • func (e EscapeError) Error() string
  • type URL
  • func Parse(rawurl string) (url *URL, err error)
  • func ParseRequestURI(rawurl string) (url *URL, err error)
  • func (u *URL) IsAbs() bool
  • func (u *URL) Query() Values
  • func (u *URL) RequestURI() string
  • func (u *URL) String() string
  • func (u *URL) Parse(ref string) (*URL, error)
  • func (u *URL) ResolveReference(ref *URL) *URL
  • type Userinfo
  • func User(username string) *Userinfo
  • func UserPassword(username, password string) *Userinfo
  • func (u *Userinfo) Username() string
  • func (u *Userinfo) Password() (string, bool)
  • func (u *Userinfo) String() string
  • type Values
  • func ParseQuery(query string) (m Values, err error)
  • func (v Values) Get(key string) string
  • func (v Values) Set(key, value string)
  • func (v Values) Add(key, value string)
  • func (v Values) Del(key string)
  • func (v Values) Encode() string

  • Examples

  • URL
  • Values

  • Package Files


    url.go

    func QueryEscape

    func QueryEscape(s string) string

    QueryEscape 함수는 s를 안전하게 URL 질의에 사용할 수 있도록 디코딩합니다.

    func QueryUnescape

    func QueryUnescape(s string) (string, error)

    QueryUnescape 함수는 QueryEscape 코드의 문자열을 복원하는 데 사용됩니다.그것은%AB를 바이트 0xAB로 바꾸고'+'를'로 바꿉니다.% 뒤에 16진수 두 개가 없으면 이 함수는 오류를 되돌려줍니다.

    type Error

    type Error struct { Op string URL string Err error }

    Error에서 오류를 보고하고 오류가 발생한 URL과 작업을 보고합니다.

    func (*Error) Error

    func (e *Error) Error() string

    type EscapeError

    type EscapeError string

    func (EscapeError) Error

    func (e EscapeError) Error() string

    type URL

    type URL struct { Scheme string Opaque string //   User *Userinfo //   Host string // host host:port Path string RawQuery string //  , '?' Fragment string //  ( ), '#' }

    URL 유형은 해결된 URL(또는 URL 참조)을 나타냅니다.URL 기본 형식은 다음과 같습니다.
    scheme://[userinfo@]host/path[?query][#fragment]

    scheme 뒤에 사칭과 쌍사선이 아닌 URL은 다음과 같은 형식으로 해석됩니다.
    scheme:opaque[?query][#fragment]

    경로 필드는/%47%6f%2f와 같이 디코딩 후 형식으로 저장됩니다.이로 인해 Path 필드의 사선이 원래 URL에서인지 디코딩 전의%2f에서인지 확인할 수 없습니다.클라이언트가 원시 URL을 해석하거나 재구성하기 위해 다른 프로그램/함수를 사용해야 하는 경우를 제외하고는 이 차이는 중요하지 않습니다.이 때 HTTP 서버는 req를 조회할 수 있습니다.HTTP 클라이언트는 URL{Host:'example.com', Opaque:'/example.com/Go%2f'} 대신 {Host:'example.com', Path:'/Go/'}를 사용할 수 있습니다.
    Example

    func Parse

    func Parse(rawurl string) (url *URL, err error)

    Parse 함수 해석rawurl은 URL 구조체로 rawurl은 절대 주소일 수도 있고 상대 주소일 수도 있습니다.

    func ParseRequestURI

    func ParseRequestURI(rawurl string) (url *URL, err error)

    ParseRequesturi 함수는 rawurl을 하나의 URL 구조체로 해석합니다. 이 함수는 rawurl이 HTTP 요청에 있다고 가정하기 때문에 이 매개 변수가 절대 URL 또는 절대 경로라고 가정하고 이 URL에 #fragment 접두사가 없다고 가정합니다.(웹 브라우저는 이 접두사를 제거한 후에야 웹 서버에 웹 주소를 보낸다)

    func (*URL) IsAbs

    func (u *URL) IsAbs() bool

    함수는 URL이 절대 URL일 때 진짜로 되돌아옵니다.

    func (*URL) Query

    func (u *URL) Query() Values

    Query 메서드는 RawQuery 필드를 해석하고 표시된 Values 유형 키 값 쌍을 반환합니다.

    func (*URL) RequestURI

    func (u *URL) RequestURI() string

    Requesturi 메서드는 인코딩된 path를 되돌려줍니까?query 또는opaque?query 문자열, HTTP 요청에 사용됩니다.

    func (*URL) String

    func (u *URL) String() string

    String은 URL을 올바른 URL 문자열로 재구성합니다.

    func (*URL) Parse

    func (u *URL) Parse(ref string) (*URL, error)

    Parse 방법은 u를 상하문으로 하여 URL을 해석하는데 ref는 절대 또는 상대 URL일 수 있다.
    이 방법의 해석 실패는nil,err로 되돌아옵니다.그렇지 않으면 ResolveReference와 일치하는 결과가 반환됩니다.

    func (*URL) ResolveReference

    func (u *URL) ResolveReference(ref *URL) *URL

    이 방법은 하나의 절대 URI에 따라 하나의 URI를 하나의 절대 URI로 보충하고 RFC 3986절 5.2를 참조한다.매개변수 ref는 절대 URI 또는 상대 URI일 수 있습니다.ResolveReference는 u 또는 ref와 완전히 같아도 항상 새 URL 인스턴스를 반환합니다.만약 ref가 절대 URI라면, 이 방법은 참조 URI를 무시하고 ref의 복사본을 되돌려줍니다.

    type Userinfo

    type Userinfo struct { //   }

    Userinfo 유형은 URL의 사용자 이름과 암호 세부 사항을 수정할 수 없는 패키지입니다.실제 존재하는 Userinfo 값은 사용자 이름(RFC 2396에 따라 빈 문자열일 수 있음)과 선택적 암호를 확보해야 합니다.

    func User

    func User(username string) *Userinfo

    사용자 함수는 사용자 이름이 사용자 이름으로 설정된 암호를 설정하지 않은 *Userinfo를 되돌려줍니다.

    func UserPassword

    func UserPassword(username, password string) *Userinfo

    UserPassword 함수는 사용자 이름이 username이고 비밀번호가 password로 설정된 *Userinfo를 되돌려줍니다.
    이 함수는 구식 사이트에만 사용해야 합니다. 위험이 크기 때문에 사용을 권장하지 않습니다. RFC 2396을 참고하십시오.

    func (*Userinfo) Username

    func (u *Userinfo) Username() string

    Username 메서드는 사용자 이름을 반환합니다.

    func (*Userinfo) Password

    func (u *Userinfo) Password() (string, bool)

    비밀번호를 설정하면 비밀번호와 진짜를 되돌려줍니다. 그렇지 않으면 가짜를 되돌려줍니다.

    func (*Userinfo) String

    func (u *Userinfo) String() string

    String 방법은 인코딩된 사용자 정보를 되돌려줍니다. 형식은 "username [:password]"입니다.

    type Values

    type Values map[string][]string

    Values는 값에 매핑된 목록을 만듭니다.이것은 일반적으로 조회에 사용되는 매개 변수와 폼의 속성입니다.http와 다르다.Header라는 사전 유형, Values의 키는 대소문자에 민감합니다.
    Example

    func ParseQuery

    func ParseQuery(query string) (m Values, err error)

    ParseQuery 함수는 URL 인코딩된 검색 문자열을 해석하고 이 검색을 표시할 수 있는 Values 형식의 사전을 되돌려줍니다.이 함수는 모든 합법적인 검색 매개 변수를 포함하는 비nil 사전을 되돌려줍니다. err는 디코딩을 설명할 때 발생하는 첫 번째 오류를 설명합니다.

    func (Values) Get

    func (v Values) Get(key string) string

    Get은 키에 대응하는 값 집합의 첫 번째 값을 가져옵니다.키에 대응하는 값 집합이 없으면 빈 문자열을 되돌려줍니다.값 집합을 가져오려면 맵을 사용하십시오.

    func (Values) Set

    func (v Values) Set(key, value string)

    set 방법은 키에 대응하는 값 집합을value만 설정하면 기존의 값 집합을 대체합니다.

    func (Values) Add

    func (v Values) Add(key, value string)

    Add는 키 관련 값 집합의 원래 값 뒤에 value를 추가합니다.

    func (Values) Del

    func (v Values) Del(key string)

    Del 키 연관된 값 세트를 삭제합니다.

    func (Values) Encode

    func (v Values) Encode() string

    Encode 방법은 v를 url 인코딩 형식("bar=baz&foo=quux")으로 인코딩하고 인코딩할 때 키로 정렬합니다.

    좋은 웹페이지 즐겨찾기