ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ajax를 사용하지 않는 방법 생각해보기
    기타 2023. 6. 12. 10:22

    웹 페이지를 동적으로 구성하는 방법으로 ajax를 많이 사용했지만,

    ajax는 개발자 도구에서 javascript를 변경하는 방법을 이용해서 이용자가 악의적으로 DB에서 데이터를 가져올 수 있는

    위험이 있다.

    따라서 동적으로 구성하고자 하는 웹 페이지를 처음 랜더링 할 때 해당 페이지에서 이용하고자하는 데이터를 모두 가져와서 javascript의 변수에 객체 형태로 저장해두고

    특정 이벤트를 발생시켰을 때 변수로부터 원하는 데이터를 가져와서 웹 페이지를 동적으로 구성하면 좋을거라고 생각해서 방법을 찾아봤다.

     

    1. controller에서 javascript로 데이터를 바로 넘겨주는 방법

    gson 라이브러리를 활용해서 DB로 부터 받아온 데이터를 json 형태로 변경하고

    model에 담아서 jsp로 보냈다.

    이후에, 다양한 방법으로 jsp에 import된 외부 js 파일에서 model에 저장되있는 객체를 변수에 저장하려고 했지만

    실패했다.

     

    2. jsp에서 변수에 객체를 저장한 후에 변수를 외부 js 파일에서 사용하기

    다음과 같이 jsp 내부에서 script 태그를 생성해서 변수에 객체를 저장하고 js에서 사용할 수 있었다.

     

    하지만

     

    개발자 도구에서도 객체 데이터를 확인할 수 있는 불상사가 발생했다...

     

    3. controller에서 특정 주소로 데이터를 넘겨준 후, js에서 필요할 때 받아서 사용하기

    처음 웹 페이지가 렌더링 될 때, 해당 페이지에서 사용할 모든 데이터가 담긴 객체를 뷰가 임의의 서버에 저장시킨 후

     

    js에서 필요할 때 원하는 정보를 호출하는 방법을 찾았다.

    /updatesensordata 로 데이터를 보내고, 해당 서버에서 받은 데이터를 백그라운드에서 생성된 차트에 저장해둔다

     

    이후에 해당 서버로 접근해서 데이터를 다시 가져오는 방식이다.

    이 방식은 아직 구현해보지 않았지만, 다음에 한번 시도해보고싶다.

Designed by Tistory.