본문 바로가기

IT/Spring

[Spring Boot] 클라이언트 디바이스 정보 확인하기

API 요청 시, 요청한 클라이언트의 정보를 확인할 수 있는 spring-mobile-starter 라이브러리 사용방법을 포스팅하겠습니다.

1. pom.xml

...
<dependencies>
	 <dependency>
            <groupId>org.springframework.mobile</groupId>
            <artifactId>spring-mobile-starter</artifactId>
            <version>2.0.0.M3</version>
            <type>pom</type>
        </dependency>
</dependencies>
...

<repositories>         
      <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
      </repository>
</repositories>
...    

spring-mobile-starter 라이브러리를 추가하고, 해당 라이브러리가 저장 되어있는 repository 정보를 등록합니다.

2. TestController

@Controller
@RequestMapping(value = "/")
public class TestController {

    private final Logger logger = LoggerFactory.getLogger(this.getClass());

    @GetMapping(value = "/deviceCheck")
    public String deviceCheck(
            Device device
    ) {

        if (device.isMobile()) {
            logger.info("[MYTEST] mobile user!");
        } else if (device.isTablet()) {
            logger.info("[MYTEST] tablet user!");
        } else {
            logger.info("[MYTEST] desktop user!");
        }

        logger.info("[MYTEST]Device : {} ", device);
        logger.info("[MYTEST]Device Platform : {}", device.getDevicePlatform());
        
        return "index";
    }
}

3. 결과 화면