Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- sqlite3
- json
- swiftm
- Array
- SERVICE_KEY_IS_NOT_REGISTERED_ERROR
- service key is not registered error
- Alamofire.AFError.session Task Failed(error: Error Domain=NSURLErrorDomain Code=-1022
- sort()
- AppTransportSecurity
- sqlite
- swiftui keyboard
- codingkey
- SwiftUI
- 공공데이터
- swiftui keyboard dismiss
- Swift
- struct
- Alamofire
- uikit
- NSURLErrorDomain Code=-1022
- api service key error
- sorted()
- App Transport Security
Archives
- Today
- Total
behan의 개인적인 기술 블로그
Swift) 공공데이터 API serviceKey 에러 (feat. SERVICE_KEY_IS_NOT_REGISTERED_ERROR) 본문
iOS/Swift
Swift) 공공데이터 API serviceKey 에러 (feat. SERVICE_KEY_IS_NOT_REGISTERED_ERROR)
behan 2022. 1. 13. 19:03공공데이터 api를 사용하는데
servicekey를 상수에 저장후 parameter로 불러들여왔을 때 serviceKey가 다른 값으로 바뀌어 들어가서
serviceKey를 정확하게 입력했음에도 불구하고 service key is not registered error 가 발생했다.
그래서 처음엔 원인과 해결방법을 몰라 baseUrl String에 그냥 서비스키까지 같이 입력해서 만들었다.
그러던 중 검색을 통해 원인을 알게 되었다.
공공데이터의 serviceKey는 이미 인코딩된 값으로 serviceKey를 제공하는 데
이 값을 사용하게 되면 인코딩이 한번 더 되면서 이상한 값으로 살짝 변경되어 처리 되었다.
간단한 해결방법으로는 serviceKey를 한번 디코딩한 다음 그 값을 사용하면 정상적으로 사용 가능하다.
let serviceKey = "발급받은 서비스 키 값"
let serviceKey_decoded = serviceKey.removingPercentEncoding // 이 값을 파라미터에 사용
// or
let serviceKey = "발급받은 서비스 키 값".removingPercentEncoding
이렇게 하면 정상적으로 serviceKey값이 들어간다.
'iOS > Swift' 카테고리의 다른 글
Swift) Alamofire Router, Combine 사용 (0) | 2022.02.02 |
---|---|
Swift) SQLite 사용법 (0) | 2022.01.20 |
Swift) json 파싱 항목명을 다른 이름으로 사용 (feat. Codingkey) (0) | 2022.01.12 |
Swift) 구조체배열 정렬 (0) | 2022.01.11 |