iOS/Swift

[iOS] API 사용시 url에 한글을 사용할 수 없는 문제

유훈 | Yuhun 2022. 3. 25. 01:06
반응형

url을 사용할 때에 한글을 사용하면 깨진다는 사실을 모르고 decoding만 한참 들여다 봤습니다...
브라우저에 붙여넣거나 포스트맨으로 실행하더라도 분명 응답이 잘 되는데 어디가 문제인지 몰랐는데 url에 한글을 그대로 사용하면 문제가 생긴다는 점을 알았습니다.

 

해결방법은 생각보다 간단했습니다.

다음은 alamofire를 사용해 데이터를 받아오는 예제입니다.

 

AF.request("여기에 url 입력".addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) ?? "") // 여기가 중요!!
            .responseDecodable(of: "decodable 모델") { response in
                guard case .success(let data) = response.result else {return}
                print(data)
            }
            .resume()

 

첫번째 줄에는 원래 url만 넣지만 다음 형식으로 넣어주면 url에 한글이 들어가도 괜찮습니다!!

"여기에 url 입력".addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) ?? ""
반응형