inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

Restaurant Pagination API 작업하기

@Headers 에 accessToken 작성했을 시 Interceptor onRequest 에서 headers 가 빈값으로 옵니다.

799

파란하늘

작성한 질문수 6

0

레스토랑 상세 API (/restaurant/{id}) 호출 시

아래와 같이 헤더값을 넣어 줬을 때

@Headers({
  'accessToken': 'true',
})

Interceptor 의 onRequest 메서드에서 options.headers 가 빈값으로 넘어와 if (options.headers['accessToken'] == 'true') 조건을 타지 않습니다.

@Headers 가 선언된 restaurant_repository.dart 에는 아래처럼 처리가 되어있고요.

import 'package:dio/dio.dart' hide Headers;
import 'package:retrofit/retrofit.dart';

아래 링크를 찾아서

https://github.com/Mindinventory/flutter-retrofit/issues/6

아래처럼 수정을 하면 정상적으로 동작 하는데

@Headers({
    'accessToken': 'true',
  })
  Future<RestaurantDetailModel> getRestaurantDetail({
    @Header('accessToken') required String accessToken,
    @Path() required String id,
});

동영상에서는 되고 제가 같은 방식으로 할 땐 안돼서 혹시 이렇게 처리하는게 맞는지, 아니면 어떤 부분이 잘못돼서 @Headers 로 값을 줬을 때 빈값으로 넘어오는지 궁금합니다.

 

 

 

 

 

 

 

 

 

flutter 하이브리드-앱

답변 1

1

코드팩토리

안녕하세요!

해당부분 조건을 타야 정상입니다. 혹시 Dio 버전을 저와 맞추셨을까요? 최신 Dio 버전이 다소 버그가 존재하고 있습니다.

Dio 버전을 맞춰보시고 그래도 안되면 다시한번 답변 달아주세요. 제가 제공해주신 레포지토리 실행해서 파악해보도록 하겠습니다. 말씀 주신 이슈는 제가 강의를 작성하기 전이라 현재 해당 안돼야 정상일 것 같습니다.

감사합니다!

0

파란하늘

안녕하세요. 라이브러리 버전들을 전부 현재 기준으로 최신 버전으로 맞춰서 했습니다.

말씀하신대로 강의코드와 동일하게 dio, retrofit 관련 라이브러리 버전들을 맞춰서 하니 헤더에 값이 정상적으로 들어와서 accessToken 업데이트가 잘 되네요.

해결 되었습니다. 감사합니다!

Isar 마지막 업데이트는 2년전입니다.

0

31

0

FlutterSecureStorage 질문

0

32

0

Dio onError Interceptor 만드는 부분에 질문이 있습니다.

0

80

2

관리자 기능에 대한 질문

0

100

2

part 'restaurant_model.g.dart';

0

92

1

36강. dio 인터셉터에 storage를 전달하는 코드가 이해 안되는데요. 도움 부탁드립니다.

0

56

2

2번 반환 상황 관련 질문

0

61

2

riverpod 3.0

0

140

2

Asset folder??

0

83

2

디자이너와 협업 시 프레임 크기 설정 관련 질문

0

114

2

FutureProvider, StateNotifierProvider 선택 기준

0

70

2

컴포넌트 모델화

0

64

2

쿼리 파라미터

0

84

2

화면 안보임

0

68

2

PaginationListView

0

54

1

강의중 37.Dio onErrorInterceptor 작업하기 dio 관련 질문입니다.

0

103

2

프로토타입이미지

0

62

2

여러 객체를 상태 관리하는 방법에 대한 질문

0

85

2

장바구니 결제하기 응답이 500이 옵니다.

0

105

2

removeFromBasket에서 await patchBasket()을 마지막에 하면 에러나는거 아닌가요?

0

67

2

이 두가지는 완전히 동일한 기능인가요?

0

106

3

내부 코드를 작성하지 않은 CursorPaginationLoading가 어떻게 로딩상태를 갖는지 잘 모르겠습니다...

0

77

2

_SplashScreenState에서 storage를 late로 호출해서 한번만 불러와도 되나요?

0

86

2

코딩 작성 순서 관련 질문

0

88

2