티스토리 뷰

URL은 웬만하면 영어와 숫자와 언더바정도로 이루어지게 됩니다.

그런데 한글이나 특수문자를 넣어주는 사람들이 있는데요.

그래서 이런 사람들을 방어해주어야 합니다.

 

* 인코딩 할때

let original = "http://www.daum.net?query=한글"
guard let target = original.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) else {
    // 인코딩중 에러가 발생함
    return
}

guard let url = URL(string: target) else {
    // URL로 만들다가 에러가 발생함
    return
}

// url을 가지고 request code는 여러분의 것.

 

* 디코딩 할때

guard let target = encoded.removingPercentEncoding else {
    // 디코드된 값이 nil
    return
}

// 나머지 코드는 여러분의 것.

 

* 옵션

Enum Option 사용 가능 Character
.urlUserAllowed Alphabet 숫자 ! $ & ' ( ) * + , - . ; = _ ~
.urlPasswordAllowed == .urlUserAllowed
.urlHostAllowed == .urlUserAllowed
.urlPathAllowed == .urlUserAllowed + (: @ /) - (;)
.urlQueryAllowed == .urlUserAllowed + (: @ ?)
.urlFragmentAllowed == .urlUserAllowed + (: @ ?)

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함