JavaScript(23)
-
[Web] 웹 서버 송신 시 비밀번호를 보낼될 경우 Hashing은 어디서?
https://www.palindrom615.dev/client-side-hashing-is-not-helping 로그인할 때 패스워드를 해싱해서 보내는 것은 보안에 아무런 도움이 안됩니다 … www.palindrom615.dev 이전까진 웹사이트에서 서버로 전송할 때 해싱을 무조건 해야 안전하다 생각했는데 생각이 많이 달라진 계기가 되었음.
2024.01.25 -
[MicroSoft] Adaptive Card 적용시켜보기 (js기반)
https://adaptivecards.io/ Adaptive Cards A whole new way to deliver UI Adaptive Cards are platform-agnostic snippets of UI, authored in JSON, that apps and services can openly exchange. When delivered to a specific app, the JSON is transformed into native UI that automatically adapts to its surro adaptivecards.io ✔️Adaptive Card 챗봇 및 대화창에서 사용할 수 있는 템플릿을 제공해준다. 목표 1. ajax 통신으로 데이터를 받는다 2. 받아온 데이터..
2023.12.29 -
[Sheetjs] 1개의 시트에 여러개의 테이블 넣기
상황 1. html 테이블이 동적으로 생성 되는 중 2. 동적 table을 클라이언트 단에서 엑셀파일로 만들고 싶었음 (굳이 서버를 거쳐야하나..?) 3. name 혹은 table 요소 선택자로 다 가져와서 sheetjs로 엑셀파일을 만들수 있게 하고 싶었음 //개발가이드 액셀 다운로드 기능 function excelDown() { //객체 생성(excel) var wb = XLSX.utils.book_new(); //html 모든 테이블 선택 var tables = document.querySelectorAll('table'); // 1개의 배열에 모든 데이터를 담기 위해 var combinedData = []; tables.forEach(function (table, index) { var ws = ..
2023.12.04 -
[jsp] 페이지네이션 하기
//페이지네이션 버튼 만들기 function btnMake(res, limit, currentPage) { let total_page = Math.ceil(res.length / limit); // 올림을 사용하여 전체 페이지 수 계산 var oHtml = ''; var startPage = Math.floor((currentPage - 1) / 5) * 5 + 1; var endPage = Math.min(startPage + 4, total_page); // 이전 버튼 추가 if (startPage > 1) { oHtml += '이전'; } // 5개씩 페이지 버튼 생성 for (var i = startPage; i
2023.11.09 -
✔️ iframe 페이지 전체 새로고침
상황 :파란색 iframe(부모) /빨간색 src(자식)으로 사용되었을 때 새로고침 내가 원하는 것: session이라는 어떤 정보가 없으면 로그인 페이지로 돌아가게 하고 싶었음 문제점: location.href 및 window.location.reload()시 밑에 빨간색 부분만 바뀌었음 해결책 1. 개발자 모드를 켰을 때 top이라는 것이 눈에 보였음 2.확인해보니 iframe은 주로 top 즉 부모요소로 간주가 된다함 주로 iframe은 부모 요소로 간주 3. 결론 top.location.href()를 사용하여 iframe(부모 요소)를 새로고침 하면 가능하다 !
2023.10.27 -
localStorage (토큰값 저장소?)
https://www.daleseo.com/js-web-storage/ [자바스크립트] 웹 스토리지 (localStorage, sessionStorage) 사용법 Engineering Blog by Dale Seo www.daleseo.com //localStorage는 로컬 스토리지의 경우 여러 탭이나 창 간에 데이터가 서로 공유되며 탭이나 창을 닫아도 데이터는 브라우저에 그대로 남아 있다. //브라우저가 바뀌면 사라진다. 따라서 DB or Cloud를 이용해야함 //TOKEN은 key값으로 사용 // 웹스토리지는 무조건 'string' 타입만 지원한다. (대책: json) > localStorage.setItem('json', JSON.stringify({a: 1, b: 2})) undefined >..
2023.05.14