지도 service 라이브러리 사용시 401에러

안녕하세요
ionic 5로 지도앱 개발중입니다~

안드로이드는 문제가없는데…
ios에서 다음과같이 401 에러가뜨면서 domain mismatched라고 뜹니다

{
“errorType”: “AccessDeniedError”,
“message”: “domain mismatched! caller=ionic%3A%2F%2Flocalhost. check out registered web domains.”
}

도메인에는 다음과 같이 3가지를 설정했어요~!

file://
http://localhost:8100
http://localhost

ionic ios webview에서 origin을 ionic:// 으로 사용한다고 합니다 ㅠ
에러 메시지처럼 ionic://localhost 를 등록하려하엿는데 형식에 맞지않다고 등록은 안되구요 ㅠ
어떻게 해야할까요…?

URL에 프로토콜을 명시해서 호출했는지 확인 부탁드립니다.

네 https:// 붙였죠 ㅠ

    <script
			type="text/javascript"
			src="https://dapi.kakao.com/v2/maps/sdk.js?appkey=앱키키키키&libraries=services"
		></script>

지도는 잘 나옵니다
geocoder 의 coord2Address 호출시 문제가 발생합니다 ㅠ
ios에서요!

아이오닉에서 개발하면 ios플랫폼에서는 안드로이드와 다르게 origin이 ionic://으로 시작하거나 개발환경에 따라서 capacitor://로 시작할수도 있습니다.

https://ionicframework.com/docs/troubleshooting/cors#ionic-webview-3-x-plugin-on-cordova

현재 카카오 사이트 도메인으로 등록할수있는 도메인형식에는 포함되어있지 않지요 (file:// 혹은 http / https)
에러메시지도 등록된 도메인이 아니라고하는데, ionic://추가가 불가능할까요?

공식적으로 지원하지 않는 플랫폼이라서
현재 해당 현상을 해결하기 위한 지원은 불가능 합니다.

아래 언급한 문서의 상황과 완전히 맞지는 않을 수도 있지만,
https://github.com/ionic-team/cordova-plugin-ionic-webview
해당 웹뷰 플러그인에서 scheme을 http/https/file로 바꾸는 방식을 채택할 수 있다면
그 방법을 사용하여 해결하는 것이 현재 최선일 듯 합니다.

네… 그럼 아이오닉 ios에서는 카카오지도를 사용할수 없겟네요… ㅠ

<preference name="iosScheme" value="httpsionic" />
Default value is ionic
Values like http, https or file are not valid and will use default value instead

REST로 직접 호출하는 방식은 안되는 걸까요?

사실 저도 질문자 분과 같은 환경에서 해 보지 않아서 모르겠습니다만,
jQuery의 $.ajax 뿐 아니라 axiosfetch 로도 가능할 것으로 보이는데요.
이것도 같은 문제가 있으려나… 어떤 부작용이 나타날지는 모르겠네요.

세상에 감동이에요
REST API KEY사용해서 직접 호출하니까 되네요!
감사합니다~ :heart_eyes:

1개의 좋아요