테스트 사이트 - 개발 중인 베타 버전입니다

그누보드의 토근 소스 문제점 해결

· 7년 전 · 4603 · 3

 $(function() {

    $(document).on("click", "form[name=fwrite] input:submit, form[name=fwrite] input:image", function() {

        var f = this.form;

        var bo_table = f.bo_table.value;

        var token = get_write_token(bo_table);

 

        if(!token) {

            alert("토큰 정보가 올바르지 않습니다.");

            return false;

        }

 

        var $f = $(f);

 

        if(typeof f.token === "undefined")

            $f.prepend('<input type="hidden" name="token" value="">');

 

        $f.find("input[name=token]").val(token);

 

        return true;

    });

});

 

그누보드 에서 보완문제를 강화하기 위해 폼이 submit 되기전에 ajax로 토큰값을 생성하는 것을 발견하였습니다.

그치만 submit 되기전 ajax 로 토큰이 생성되는 자바스크립트 소스가 조금 불안정합니다.

input:submit 에만 걸어두면, 만약에 다른 방식으로 submit 을 하게되면 토큰 체크를 하지 않게 됩니다.

붉은색 소스가 제가 추가한 부분입니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 3개

좋은 정보 감사합니다. 저도 그런증상이 있었는데 이제서야 이해가 되네요. 도움이 될것같습니다.,^^
좋은 정보입니다. 해당 팁은
그누보드 5.2.9.5 패치 즉 2017년 10월에 패치가 되었습니다.
https://sir.kr/g5_pds/3751
https://github.com/gnuboard/gnuboard5/commit/8ed85a5fb4e5756d431354ee0db3045c12a222d4
좋은 정보이네요 알려주셔서 감사합니다.^ㅁ^

게시판 목록

그누보드5 팁자료실

글쓰기
🐛 버그신고