[REACT NATIVE] iOS localhost Network request failed

테크33·2022년 7월 3일
0
post-thumbnail

react native에서 ios 실제 디바이스로 테스트할 때, 서버가 localhost 일 때 network request failed 에러가 뜰 때가 있다.

시뮬레이터에서는 정상적으로 잘 되지만 실제 디바이스에서는 작성되지 않아 해결법을 찾아보았다. 여러 시도를 해봤지만 아래 소개하는 방법을 시도했을 때 바로 해결되었다.

1. info.plist > NSAppTransportSecurity

ios는 기본적으로 http 를 허용하지 않고 https 만을 허용한다.
따라서 info.plist 에서 localhost 인 경우 http를 허용하도록 해주는 코드를 추가한다.

<key>NSAppTransportSecurity</key>
	<dict>
	<key>NSExceptionDomains</key>
	<dict>
		<key>localhost</key>
		<dict>
			<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
			<true/>
		</dict>
		</dict>
	</dict>

2. 시스템 환결성정 > 네트워크에서 IP 주소 확인

ip 주소 확인 후 서버의 url 주소를 수정해준다.

// const url = 'http://localhost:3000/your_api'
// localhost를 현재 내 ip 주소로 수정해준다.
const url = 'http://192.168.xx.xx:3000/your_api'

주의할 점: ip 주소가 바뀔 때마다 url 을 바꿔줘야 합니다!

0개의 댓글