언어 27

request.getRemoteAddr()로 정확한 IP 추출이 되지 않을 때..

아마 접근IP를 추출하기 위해 많이 쓰는 메소드로 request.getRemoteAddr()가 있을 것 이다. 근데 100% 정확한 ip 추출이 되지 않는 것을 최근 경험하여 검색하고 수정 한 것을 다른 사람들도 편하게 찾을 수 있게 남겨보려 한다. 우선 원인은 중간에 L4나 프록시 서버 등이 생기며 변조되는 문제였다. 내 업무지의 경우 클라우드로 나가면서 보안을 위해 여러 장비를 통해 web에 전달되다보니 발생하였다. (WAF -> LB -> WEB) 그래도 마냥 불가능하진 않다. 추가적인 header들이 생기면서 원래의 ip가 저장이 된다고 한다. 이걸 이용하여서 추출하여 사용하고 싶은곳에 사용 할 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Str..

언어/JAVA 2023.05.11

data-hwpjson 제거해버리기

업무 중 오류 사항을 전달 받았고 특정 게시글들만 게시글 저장/수정시에 크롬이 죽어버리는 현상이 발생되었다. 확인해보니 hwpEditorBoardContent라는 id값을 가진 div와 함께 data-hwpjson 이라는 태그가 함께 딸려 들어온다 그러니 필요외의 본문 내용이 함께 저장되서 너무 느려진다. 그래서 저장전에 불필요한 내용은 지우고 넘겨서 저장하도록 바꿨더니 해결되었다. (이게 원초적 해결인지는 잘 모르겠...) 1 2 3 4 5 var ntt = jQuery("#p_ntt_cn").val(); if(ntt.indexOf("

언어/JavaScript 2023.01.10

Javscript - 데이터속성(data-xx) 관련하여

data-xx 개인적으로 필요에 따라 데이터를 hidden에 담아 숨겨두고 했는데 이번의 경우는 클릭 할 때 해당 태그에 할당된 값을 불러 와서 쓰려고 하다보니 찾게 되었고,본인은 a태그에 사용하였지만 다른 태그에도 사용이 가능합니다. var exam = document.getElementById("id"); //아래와 같이 사용하면 할당된 값을 가져와 출력합니다. console.log(exam.dataset.value); console.log(exam.dataset[value]); console.log(exam.dataset.id); console.log(exam.dataset[id]); //아래와 같이 사용하면 값의 변경도 가능합니다. exam.dataset.value = 2; exam.dataset..

언어/JavaScript 2022.12.22

a태그 javascript:void(); 에러 발생

a태그 기본 클릭을 막고 onclick을 잡아두는 과정에 a href = 'javascript:void();'로 작업하니 콘솔에 vm에러가 떠서 void(0)으로 변경해주니 콘솔에 에러 출력이 안되는 것을 확인했지만 둘의 차이점과 원인은 아직 모르겠는데 혹시나 나 같은 문제에 닥친 사람이 있을까봐 우선 작성해둡니다. void 연산자는 값을 생성하는 표현식을 평가해서 undefined를 반환합니다. 오직 undefined 원시값을 얻기 위해선 void 0 또는 void(0) 처럼만 사용해야 원하는 기댓값을 얻어 낼 수 있습니다. 출처 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/void

언어/JavaScript 2022.12.14

에라토스테네스의 체

소수를 찾는 대표적인 방법중 하나 " k=2 부터 √N 이하까지 반복하여 자연수들 중 k를 제외한 k의 배수들을 제외시킨다" 최근에 알고리즘을 기초부터 다시 공부하다가 알게되었다. public class Eratos { public static void main(String[] args) { // ArrayList로 구현 ArrayList primeList; // 사용자로부터의 콘솔 입력 Scanner scan = new Scanner(System.in); int n = scan.nextInt(); // n

언어/JAVA 2022.11.15

배열 복사 : clone() 과 arraycopy()

배열 A = 배열 B 의 형식으로 복사를 하면 주소값을 복사하는 형식이라 한쪽을 수정하면 다른 한쪽에서도 변경되버림 그래서 clone()과 arraycopy()를 찾아보았고 clone()은 원본과는 별개의 주소값의 배열을 만드는 것이고 arraycopy()는 배열 A = 배열 B와 같은 결과지만 속도는 겁나 빠르단다(본인은 한번도 안써봄) 덤으로, 주소값만 복사하는 걸 shallow clone, 내용물을 복사하여 별개의 객체를 만드는 것을 deep clone이라고 합다.

언어/JAVA 2022.11.09
728x90
반응형