강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

juno님의 프로필 이미지
juno

작성한 질문수

[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발

다국어 처리를 위한 Internationalization 구현 방법

Accept-Language헤더 설정안하면 400에러가 나네요

해결된 질문

작성

·

682

1

강의 9:22초에서 하듯이 헤더설정없이 그냥 리퀘스트하면 정상적으로 실행이 되지 않습니다 헤더설정을 꼭 해줘야만 실행이 되는데 뭐가 문제일까요? required=false 지정도 했는데, 디버깅으로 확인해도 메서드가 실행이 안됬었습니다

퀴즈

API에 클라이언트 입력 값에 대한 유효성 검사 기능을 추가하는 주된 이유는 무엇일까요?

API 응답 속도를 높이기 위해

데이터 무결성을 확보하고 입력 오류를 방지하기 위해

XML과 같은 다양한 응답 형식을 지원하기 위해

응답 데이터에서 민감한 정보를 숨기기 위해

답변 2

1

juno님의 프로필 이미지
juno
질문자

답변 감사합니다.

사실 postman말고 다른 api툴로 테스트하고 있었는데

Accept-Language지정하지 않으니까 말씀하신대로 언어값이 여러개로 자동으로 넘어가고 있었습니다.

0

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다. 

Accept-Header 테스트를 사용하신 환경이 Postman 또는 Web browser(크롬 등) 어떤 환경에서 테스트하신것인지 알수 있을까요? 

Postman에서 Header에 Accept-Header를 지정하지 않으면, Request header에도 Accept-Header에도 아무런 값도 전달되지 않아 기본 메시지가 표시되어야 하는데, 만약 그렇지 않다면 Postman의 캐쉬정보를 삭제하시고 다시 시도해 보시기 바랍니다. 

그리고, 웹 브라우저에서 테스트 하신거라면, 아래와 같이 Accept-Language에 여러 값이 전달되었는지 확인해 보시기 바랍니다. 매칭되는 값이 없기 때문에 400 Bad request가 발생된 것 같습니다.

웹 브라우저에서 설정 > 언어에서 언어 설정을 한개만 남기신 후에 다시 웹 브라우저를 실행해 보시면, 하나의 값만 전달되어 기본 메시지가 보이게 될 겁니다. (Windows 10 + Edge 브라우저 테스트)

감사합니다.

juno님의 프로필 이미지
juno

작성한 질문수

질문하기