inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

Unhandled Exception: type '_Map<String, dynamic>' is not a subtype of type 'Contact_Item'

해결됨

Flutter 앱 개발 실전

안녕하세요. 강의를 듣고나서 테스트를 해보는데 안되어서 문의 좀 드립니다. addrinfo: json['addrinfo'] == null ? null : List<Contact_Item>.from(json['addrinfo']), 위 부분을 어떻게 처리해야 해결될 수 있는지를 모르겠습니다. addrinfo 는 값이 서버에서 null을 반환할 수도 있고 List<Contact_Item> 을 반환할 수도 있습니다. class Contact_Item { final String idx; final String userNM; final String mobileNO; final String telNO; final String photo; final bool checkBoxState; const Contact_Item({ required this.idx, required this.userNM, required this.mobileNO, required this.telNO, required this.photo, required this.checkBoxState, }); factory Contact_Item.fromJson(Map<String, dynamic> json) { return Contact_Item( idx: json['idx'] as String, userNM: json['userNM'] as String, mobileNO: json['mobileNO'] as String, telNO: json['telNO'] as String, photo: json['photo'] as String, checkBoxState: json['checkBoxState'] as bool, ); } } class ContactResult { final String status; final String message; final List<Contact_Item>? addrinfo; const ContactResult({ required this.status, required this.message, this.addrinfo, }); factory ContactResult.fromJson(Map<String, dynamic> json) { return ContactResult( status: json['status'] ?? '', message: json['message'] ?? '', addrinfo: json['addrinfo'] == null ? null : List<Contact_Item>.from(json['addrinfo']), ); } } abstract class ContactRepo { Future<ContactResult> getAddressData(ContactRequest req); } class ContactService extends ContactRepo { Future<ContactResult> getAddressData(ContactRequest req) async { BaseOptions options = BaseOptions( baseUrl: RetrofitURL.baseUrl, ); Dio dio = Dio(options); dio.interceptors.add(Logging()); FormData formData = FormData.fromMap({ "keyword": req.keyword, "search": req.search, }); final response = await dio.post(RetrofitURL.contactData, data: formData); print(response); // print(response.data.runtimeType); //print(response.headers); if (response.statusCode == 200) { ContactResult result = ContactResult.fromJson(response.data); return result; } else { return ContactResult(status: "fail", message: "fail", addrinfo: null); } } } 에러 메시지 내용 I/flutter (23550): RESPONSE[200] => PATH: /androidSample/ContactList.php I/flutter (23550): {"status":"success","message":"","addrinfo":[{"idx":1,"userNM":"개발자","mobileNO":"01000010001","telNO":"0234560001","photo":"1.jpg","checkBoxState":false},{"idx":2,"userNM":"이정은","mobileNO":"01001230001","telNO":"","photo":"2.jpg","checkBoxState":false},{"idx":3,"userNM":"김홍길","mobileNO":"01001230002","telNO":"","photo":"null","checkBoxState":false},{"idx":4,"userNM":"최신형","mobileNO":"01001230003","telNO":"","photo":"4.jpg","checkBoxState":false},{"idx":5,"userNM":"홍길동","mobileNO":"01000009880","telNO":"","photo":"5.jpg","checkBoxState":false},{"idx":6,"userNM":"김아정","mobileNO":"01001230005","telNO":"","photo":null,"checkBoxState":false},{"idx":7,"userNM":"이순신","mobileNO":"01001230006","telNO":"","photo":"7.jpg","checkBoxState":false},{"idx":8,"userNM":"이정민","mobileNO":"01000010887","telNO":"","photo":null,"checkBoxState":false},{"idx":9,"userNM":"최재수","mobileNO":"01001110000","telNO":"","photo":"9.jpg","checkBoxState":false},{"idx":10,"userNM":"장정은" E/flutter (23550): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: type '_Map<String, dynamic>' is not a subtype of type 'Contact_Item' E/flutter (23550): #0 new List.from (dart:core-patch/array_patch.dart:29:5) E/flutter (23550): #1 new ContactResult.fromJson (package:login_ex/contact/model/contact_result.dart:19:51) E/flutter (23550): #2 ContactService.getAddressData (package:login_ex/contact/repository/contact_service.dart:32:44) E/flutter (23550): <asynchronous suspension> E/flutter (23550): #3 MainScreenState.getContactData (package:login ex/contact/view/main_screen.dart:35:30) E/flutter (23550): <asynchronous suspension>

  • flutter
Link 댓글 1 좋아요 2 조회수 1908

직접 어플리케이션 서버에 요청을 보내면 동작하는데, gateway 서버로 보내면 404가 뜹니다

해결됨

Java 마이크로서비스(MSA) 프로젝트 실습

config-server / eureka-server / gateway-server / 그리고 item-service-server 대신에 제가 만드는 rms라는 애플리케이션 서버를 띄웠습니다. 게이트웨이 서버를 통해서 http 요청을 보내면 404가 뜨고 직접 애플리케이션 서버로 요청을 보내면 잘 동작하는 상태입니다. 그래서 config-server의 gateway-server-local.yml 파일에서 spring.cloud .gateway 부분에 문제가 있을거라 추측하고 계속 찾아봤는데... 어떻게 변경해야 할지.. 잘 모르겠어서 질문드립니다. 일단 파일 전체를 공유하겠습니다. config-server resources.application.yml spring: application: name: config-server profiles: active: native cloud: config: server: native: search-locations: classpath:/config encrypt: enabled: false server: port: 8080 resources.bootstrap.yml encrypt: key: IRON0000 resources.config.eureka-server-local.yml logging: file: name: logs/eureka.log max-size: 500MB max-history: 10 level: root: info org.com.iron.eureka-server: debug spring: application: name: eureka-server server: port: 8761 eureka: instance: hostname: eureka-server client: serviceUrl: defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ register-with-eureka: false fetch-registry: false management: endpoints: web: exposure: include: "*" resources.config.gateway-server-local.yml logging: file: name: logs/gateway-local.log max-size: 500MB max-history: 10 level: root: info org.hibernate.SQL: debug # org.hibernate.type: trace spring: application: name: gateway-server cloud: gateway: routes: - id: rms uri: lb://rms eureka: instance: prefer-ip-address: true client: register-with-eureka: true fetch-registry: true service-url: defaultZone: http://localhost:8761/eureka resources.config.rms.yml logging: file: name: logs/api.log max-size: 500MB max-history: 10 level: root: info org.hibernate.SQL: debug # org.hibernate.type: trace spring: datasource: url: jdbc:h2:tcp://localhost/~/server-iron username: sa password: driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: none properties: hibernate: show_sql: true format_sql: true default_batch_fetch_size: 1000 #최적화 옵션 mybatis: mapper-locations: mybatis/mappers/*.xml springdoc: default-consumes-media-type: application/json default-produces-media-type: application/json swagger-ui: operations-sorter: alpha disable-swagger-default-url: true display-query-params-without-oauth2: true resources.config.rms-local.yml logging: file: name: logs/rms-local3.log max-size: 500MB max-history: 10 level: root: info org.hibernate.SQL: debug # org.hibernate.type: trace spring: datasource: url: jdbc:h2:tcp://localhost/~/server-iron username: sa password: '{cipher}' driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: none properties: hibernate: show_sql: true format_sql: true default_batch_fetch_size: 1000 #최적화 옵션 mybatis: mapper-locations: mybatis/mappers/*.xml springdoc: default-consumes-media-type: application/json default-produces-media-type: application/json swagger-ui: operations-sorter: alpha disable-swagger-default-url: true display-query-params-without-oauth2: true token: expiration_time: 86400000 secret: IRON0000 eureka: instance: instance-id: ${spring.cloud.client.hostname}:${spring.application.instance_id:${random.value}} prefer-ip-address: true client: register-with-eureka: true fetch-registry: true service-url: defaultZone: http://localhost:8761/eureka eureka-server.yml resources.bootstrap.yml spring: application: name: eureka-server profiles: active: local cloud: config: uri: http://localhost:8080 loadbalancer: ribbon: enabled: false gateway-server resources.bootstrap.yml server: port: 8070 spring: application: name: gateway-server profiles: active: local cloud: config: uri: http://localhost:8080 loadbalancer: ribbon: enabled: false management: endpoints: web: exposure: include: refresh, health, beans rms resources.bootstrap.yml server: port: 0 spring: application: name: rms profiles: active: local cloud: config: uri: http://localhost:8080 loadbalancer: ribbon: enabled: false refresh: extra-refreshable: com.zaxxer.hikari.HikariDataSource management: endpoints: web: exposure: include: refresh, health, beans build.gradle 파일들도 올려야할까요...

  • java
  • spring
  • rest-api
  • spring-boot
  • msa
김병철 댓글 5 좋아요 0 조회수 1706

이미지 404에러가 발생했습니다~~

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞════════════════════════════════════════════════════ The following NetworkImageLoadException was thrown resolving an image codec: HTTP request failed, statusCode: 404, http://10.0.2.2:3000/img/%EB%96%A1%EB%B3%B6%EC%9D%B4/%EB%96%A1%EB%B3%B6%EC%9D%B4.jpg When the exception was thrown, this was the stack: #0 NetworkImage._loadAsync (package:flutter/src/painting/_network_image_io.dart:135:9) <asynchronous suspension> Image provider: NetworkImage(" http://10.0.2.2:3000/img/떡볶이/떡볶이.jpg ", scale: 1.0) Image key: NetworkImage(" http://10.0.2.2:3000/img/떡볶이/떡볶이.jpg ", scale: 1.0) ════════════════════════════════════════════════════════════════════════════════════════════════════ 어떻게 해야할까요..?

  • flutter
  • 하이브리드-앱
최정아 댓글 1 좋아요 0 조회수 910

실제 활용 관점

미해결

김영한의 실전 자바 - 기본편

안녕하세요 강의를 듣던 와중에 궁금한 점이 생겨 질문 남깁니다. 실제로 그렇다면 추상 클래스와 인터페이스 중에 인터페이스를 사용하는게 이점일 것 같은데. 대부분의 경우 인터페이스로 구현되고, 추상 클래스는 사용하지 않는 것인가요 ? 백엔드 개발 시에도 인터페이스 구현을 통해서만 작성하는 것 같아 여쭤봅니다.

  • java
  • 객체지향
백엔드공부화이팅 댓글 1 좋아요 0 조회수 455

맥 h2 db 실행오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 맥 터미널에서 권한 부여까지 한후 실행을 했는데 ./bin/ h2.sh : line 3: 3667 Trace/BPT trap: 5 java -cp "$dir/h2-2.2.224.jar:$H2DRIVERS:$CLASSPATH" org.h2.tools .Console "$@" 이와 같은 메세지가 뜨면서 아예 화면도 안뜨네요ㅜㅜ

  • java
  • spring
  • mvc
  • spring-boot
댓글 3 좋아요 0 조회수 1064

모델 클래스 작석 시 nullable

해결됨

Flutter 중급 1편 - 클린 아키텍처

json to dart 모델 작성시에 nullable 보다 late final로 선언하는 것을 더 선호하신다고 했는데, 이유가 있을까요?

  • flutter
  • ios
  • android
지루한 성게 댓글 1 좋아요 0 조회수 263

섹션24 데이터베이스

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

섹션24 데이터베이스 수업에서 flutter pub run build_runner build를 터미널에 작성해도 새로운 파일이 생성되지 않습니다. 해결 방법이 있을까요?

  • flutter
  • 클론코딩
나무22 댓글 1 좋아요 0 조회수 251

npm run start:dev 명령어 실행시 Error: connect ECONNREFUSED ::1:6379 에러 발생

미해결

Next + React Query로 SNS 서비스 만들기

해당 강의에서 postgresql 설치와 노드버전 18.17.0 환경에서 nest-prisma의 폴더를 다운 받은 후 npm i -> npx prisma migrate dev 까지는 순조롭게 진행되었으나 npm run start:dev에서 Error: connect ECONNREFUSED ::1:6379 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1495:16) { errno: -61, code: 'ECONNREFUSED', syscall: 'connect', address: '::1', port: 6379 } 에러가 발생했습니다 구글링을 해보니 레디스 서버가 구동이 안된 것 같다고 나오기도하고 서버쪽을 잘 몰라 질문 드립니다 .env 파일 입니다 DATABASE_URL="postgresql://postgres:비번@localhost:5432/zcom?schema=public" REDIS_URL=redis://localhost:6379 COOKIE_SECRET=cookienyamnyam

  • react
  • next.js
  • react-query
  • next-auth
  • msw
mun9927 댓글 4 좋아요 2 조회수 1426

API 요청 시, cookie 보내는 것에 대한 질문

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요! 제로초님! 보너스 강의까지 잘 챙겨보고 있습니다. 매번 감사합니다! 제 질문은..! server action 함수쪽에서 fetch config 객체에 credentials 을 include로 해줘야 쿠키(세션)를 API 요청 시 같이 태워서 보낼 수 있다고 설명해주셨는데, 혹시 이것이 next-auth 로부터 도움을 받는 것일까요? 강의 수강 후, next 14로 프로젝트를 구현하고 있는데, fetch 할 때, credentials 를 include 해주었음에도 불구하고, 브라우저 application 탭에서 확인 할 수 있는 쿠키가 태워지지 않아서요. 해당 쿠키는 서버에서 로그인 시에 set-cookie 해준 쿠키이고, 프론트엔드는 localhost , 서버는 ec2에 배포된 서버입니다. 그래서 현재는 server action 함수내에서 next.js에서 지원해주는 cookie() 를 이용해서 fetch config 객체 내 headers 에 직접 쿠키를 넣어주고 있는데, 강의에서는 credentials 만으로 API 요청시 쿠키(세션)을 잘 태워서 보내주고 있는 것 같아 질문을 남기게 되었습니다.

  • react
  • next.js
  • react-query
  • next-auth
  • msw
withkey 댓글 2 좋아요 0 조회수 1082

Response DTO VS HTTP Response

해결됨

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. 강의 잘 듣고 있습니다.강의 도중 궁금한 점이 생겨 질문드립니다. 강의에서는 POST나 PUT요청에서도 Response DTO 객체를 생성해서 전달하셨는데, 실제 실무에서도 이렇게 하는지 궁금합니다. 질문드린 이유는 HTTP Response code상 201이나 204 등의 응답코드가 있는 것으로 알고있는데, Response를 매번 생성하는게 실질적으로 좋은 설계이기 때문인지, 아니면 변경이 완료된 것을 실제로 조회하면서 이해를 돕기 위함인지 궁금했습니다. 감사합니다.

  • java
  • spring
  • spring-boot
  • jpa
엽엽 댓글 1 좋아요 0 조회수 424

CustomScrollView에 TabBar적용시 스크롤하면 여백이 많이생겨요.

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요. 강의를 통해서 CustomScrollView에 TabBar를 적용 해보았는데요. 앱상단에는 컨텐츠를 만들고 중간쯤 탭바를 구현해서 각 탭바뷰에 ListViewBuild를 적용 하려 하는데요, TabBarView에 ListView나 ListViewBuild를 적용하면 잘 동작하는데, TabBarView에 들어오는 컨텐츠 내용이 길 경우에는 상관이 없는데, 컨텐츠 내용이 적을 경우 아래 코드처럼 탭1에 컨테이너 높이를 주거나 (SliverFillRemaining 전체 남는 요소를 다채워서 높이값이 안먹고,) 탭2에 텍스트 위젯만 썻을 경우에 화면 스크롤시 현재 남은 공간 외에도 더 많은 공간이 스크롤되서 컨텐츠 내용도 적은데 스크롤이 너무 많이 나타나서. NestedScrollView 도 그렇고 CustomScrollView 그렇고 동일한 현상이 나타나서... 기본 스크롤 공간여백을 현재 컨텐츠가 가지고 있는 공간만큼만 스크롤 되게 할 수는 없을까요? 아무리 찾아봐도 해결할 수가 없어서 도움 요청드려요 ㅠ DefaultTabController( length: 2, child: CustomScrollView( slivers: [ SliverList( delegate: SliverChildListDelegate([ Column( children: [ Text('컨텐츠'), Text('컨텐츠'), Text('컨텐츠'), Text('컨텐츠'), Text('컨텐츠'), Text('컨텐츠'), ], ), ]), ), SliverAppBar( floating: true, pinned: true, bottom: TabBar( tabs: [ Tab(text: '탭 1'), Tab(text: '탭 2'), ], ), ), SliverFillRemaining( child: TabBarView( children: [ // 첫 번째 탭에 대한 내용 Container( height: 200, color: Colors.red, ), // 두 번째 탭에 대한 내용 Text('두 번째 탭 내용'), ], ), ) ], ), )

  • flutter
  • 클론코딩
김훈민 댓글 1 좋아요 1 조회수 504

members/new 회원가입 whitelabel 오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 네 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 네 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 네 [질문 내용] 안녕하세요, localhost:8080/members/new에 접근하면 whitelabel에러가 떠서 이유가 무엇인지 질문 드립니다. 오타같은 것도 없고 구조도 정확한 것 같은데 어떤 부분이 문제인건지 전혀 모르겠습니다... hello.hellospring/controller/HomeController hello.hellospring/controller/MemberController resources/templates/home.html resources/templates/members/createMemberForm.html 폴더 구조 실행 결과

  • java
  • spring
  • mvc
  • spring-boot
새우좋아하새우? 댓글 2 좋아요 0 조회수 563

패스워드 RSA 암호화 문의

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

강의에서는 패스워드를 암호화하지 않고 그냥 보내는 방식으로 설명해주셨는데요. Flutter 에서 패스워드를 RSA 암호화하고 서버에서 복호화 처리하는 방법으로 실제 프로젝트에서는 사용할 거 같습니다. Flutter 에서 RSA 암호화 하는 예제 코드 좀 부탁드리겠습니다.

  • flutter
  • 하이브리드-앱
Link 댓글 1 좋아요 0 조회수 525

에뮬레이터 실행하면 오류가 뜹니다

해결됨

Flutter 앱 개발 기초

오픈 카카오톡 으로 문의주시면 더 빠르게 답변 받으실 수 있어요 :) 에뮬레이터 실행하면 이런 오류문구가 계속 뜹니다...... 혹시나 예전에 어떤 책 보면서 해놓은 환경변수 설정해 놓은게 있어서 그거 때문인가 싶어 그 환경 변수 지워봤는데 도움이 되진 않네요..... 구글에 쳐봤는데 제가 이해할 수 가 없어서 어떻게 해야 할 지 모르겠습니다...

  • flutter
  • 에뮬레이터
GOOSPEL 댓글 1 좋아요 1 조회수 372

에뮬레이터 실행하면 오류가 뜹니다

해결됨

Flutter 앱 개발 기초

오픈 카카오톡 으로 문의주시면 더 빠르게 답변 받으실 수 있어요 :) 에뮬레이터 실행하면 이런 오류문구가 계속 뜹니다...... 혹시나 예전에 어떤 책 보면서 해놓은 환경변수 설정해 놓은게 있어서 그거 때문인가 싶어 그 환경 변수 지워봤는데 도움이 되진 않네요..... 구글에 쳐봤는데 제가 이해할 수 가 없어서 어떻게 해야 할 지 모르겠습니다...

  • flutter
  • 에뮬레이터
댓글 1 좋아요 0 조회수 339

에뮬레이터 실행하면 오류가 뜹니다

해결됨

Flutter 앱 개발 기초

오픈 카카오톡 으로 문의주시면 더 빠르게 답변 받으실 수 있어요 :) 에뮬레이터 실행하면 이런 오류문구가 계속 뜹니다...... 혹시나 예전에 어떤 책 보면서 해놓은 환경변수 설정해 놓은게 있어서 그거 때문인가 싶어 그 환경 변수 지워봤는데 도움이 되진 않네요..... 구글에 쳐봤는데 제가 이해할 수 가 없어서 어떻게 해야 할 지 모르겠습니다...

  • flutter
  • 에뮬레이터
댓글 1 좋아요 0 조회수 248

에뮬레이터 실행하면 오류가 뜹니다

해결됨

Flutter 앱 개발 기초

오픈 카카오톡 으로 문의주시면 더 빠르게 답변 받으실 수 있어요 :) 에뮬레이터 실행하면 이런 오류문구가 계속 뜹니다...... 혹시나 예전에 어떤 책 보면서 해놓은 환경변수 설정해 놓은게 있어서 그거 때문인가 싶어 그 환경 변수 지워봤는데 도움이 되진 않네요..... 구글에 쳐봤는데 제가 이해할 수 가 없어서 어떻게 해야 할 지 모르겠습니다...

  • flutter
  • 에뮬레이터
댓글 1 좋아요 0 조회수 230

onSliderChanged 함수에 val 파라미터는

해결됨

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

_Footer( maxNumber: maxNumber, onSliderChanged: onSliderChanged, onButtonPressed: onButtonPressed, ) void onSliderChanged(double val) { setState(() { maxNumber = val; }); } onSliderChanged 함수를 부를 땐 인자값을 넘기지 않는데 onSliderChanged 함수에는 val를 인자값으로 받고 있는데 이 부분이 이해가 잘 안 갑니다..

  • flutter
  • 클론코딩
종마루 댓글 1 좋아요 0 조회수 246

인기 태그

인프런 TOP Writers

주간 인기글