Confluence 에 심각한 보안 취약점이 발견되었으니 사용자분들은 업그레이드 하세요.!
 
1
0
-1

행정안전부에서 제공하는 도로명주소 API(jsuo.go.kr/addrlink/main.do)를 사이트에 적용하고자 합니다.

사이트에서 제공하는 도로명주소 팝업API호출 소스를 참고하여 적용해 보았습니다.

1) 라우팅(web.php)

   1-3) API조회 결과값을 받을 때 사용


2) 컨트롤러

   2-1) 팝업창을 호출하는 기본 페이지

  

   2-2) 팝업창 페이지를 호출할 때 사용 (초기값이 없으니깐 오류가 발생해서 초기값을 대입함)

   2-3) API 조회 결과값을 팝업창으로 전달


3) 뷰

3-1) index.blade.php 자바스크립트 부분 (팝업을 호출하고 결과값으로 전체 주소만 받습니다)

3-2) popup.blade.php 자바스크립 부분

3-3) popup.blade.php HTML 부분


위와 같이 구성하였습니다.

이렇게 해서 테스트를 진행하게 되면 index.blade.php 에 조회 결과값을 받아 필드에 도로명 주소가 입력됩니다.


그러나 문제는 여기서 전송을 눌러 폼을 전송하면, csrf 오류(419) 에러가 발생합니다.


아마 팝업창에서 API를 호출하면서 form 이 사용되면서 csrf 관련 어디가 꼬이는 것 같은데

그래서 제가 조치한 사항은 Middleware/VerifyCsrfToken 클래스의 아래 내용을 추가하니 어쨌든 정상 동작은 합니다.


이렇게 해서 진행하고 있었는데, 사용자 로그인을 구현한 뒤, 로그인 한 사용자만 위 페이지를 사용할 수 있게 적용해서 했더니 그냥 로그아웃이 되어 버립니다. 

근본적인 문제점을 알아서 해결해야 할 것 같은데, 라라벨 PHP 가 아직 서툰상태라 답답한 상태입니다.

라라벨에 도로명 주소를 적용해 보셨거나 위의 해결책에 도움 주실 말씀 구하겠습니다.


긴 글 읽어주셔서 감사합니다.

(질문 카테고리를 laravel 로 변경하였습니다.)

    CommentAdd your comment...