URL을 통해 네트워크 통신 시 정말 많은 변수들이 있겠지만
이번에 알아볼 것은 URL 값 자체가 nil이 되는 경우를 알아보겠습니다🙋🏻
URL을 구성하는 문자열에 헤더 파라미터로 한글이 들어가거나 특수문자가 들어갈 수 있죠.
이 경우 별다른 처리가 없다면 URL은 nil 값을 가지게 되고 인코딩 시 정상적인 동작을 하지 않아 결국 통신 시 문제가 됩니다🥲
한글 및 몇가지 특수문자들의 경우 URL로 인식할 수 없기에 별도 처리가 필요합니다.
요때 Swift에서는 addingPercentEncoding(withAllowedCharacters:) 라는 메서드를 활용하여 해결해줄 수 있습니다🙋🏻
CharacterSet 타입의 파라미터 인자를 통해 정해진 Set에 없는 문자들을 %인코딩 된 문자로 대체해 새 문자열을 만들어줍니다.
그걸 통해 URL이 인식할 수 있도록 해주죠😃
해당 타입의 지정된 변수들은 상당히 많지만 대부분의 경우에는 urlQuearyAllowed를 씁니다.
한글 및 ?, ! $ 등 제외된 여러 특수문자들을 키워드로 취급할 수 있도록 도와줍니다.
모두 URL을 취급할 때 한번 더 유의하시길 바랍니다🥳