본문 바로가기

Web/Flutter

[Flutter] SocketException: OS Error: Connection refused, errno = 111, address = localhost 에러 해결 방안

에러 메시지 : SocketException: OS Error: Connection refused, errno = 111, address = localhost, port = 35658

발생 환경

  • API를 로컬 환경에 띄워 놓고 Flutter로 개발중인 어플에서 호출시에 발생
  • API 주소의 도메인은 "localhost"를 사용

에러 발생 이유

Android Emulator 사용시에 AVD는 현재 개발중인 컴퓨터의 환경이 아닌 모바일 환경에서 작동중인 것이고 이때 localhost를 사용한다고 해도 모바일 내에 alias가 설정되어 있다면 그쪽으로 접근하려고 할 것이고 접근이 거부되어 에러가 발생합니다.  

 

수정 방안

따라서 localhost alias를 사용해야하는 경우를 자신의 IP를 직접 입력하는 방식으로 대체합니다.

 

  • 자신의 IP 주소 확인(IPv4)
//window
cmd > ipconfig 명령어 사용

//Mac OS
터미널 > ifconfig
  • 위에서 확인한 주소로 코드의 localhost 부분 대체
ex) localhost:8080/test => 192.160.0.1:8080/test

 

반응형

'Web > Flutter' 카테고리의 다른 글

[Flutter] naver_map_plugin 사용기  (0) 2020.12.15
[Flutter] SafeArea  (0) 2020.11.27
[Flutter] http 이용해서 이미지 파일 post로 보내기  (0) 2020.11.25