문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
wiki:miscellaneous:escapehtmlandunescapehtml [2022/05/04 18:14] 127.0.0.1 바깥 편집 |
wiki:miscellaneous:escapehtmlandunescapehtml [2023/01/13 18:44] (현재) |
||
---|---|---|---|
줄 98: | 줄 98: | ||
====== unescapeHtml ====== | ====== unescapeHtml ====== | ||
- | 3. Decryption - // | ||
- | <code java> | + | ===== 3. 문제 ===== |
- | & | + | Crypto-unescapeHtml에서 Decrypt Text 실행 시 에러 발생\\ |
- | </ | + | |
\\ | \\ | ||
- | + | Decrypt Text 버튼 클릭 | |
- | 3.1 - Decrypt Text 버튼 클릭 | + | {{: |
- | + | ||
- | <code javascript> | + | |
- | & | + | |
- | </ | + | |
\\ | \\ | ||
- | + | Decrypt | |
- | 3.2 - 이때 Decryption - Input Text 입력란은 아래와 같이 코딩되어 있었습니다.\\ | + | {{:wiki:miscellaneous: |
- | + | ||
- | <code java> | + | |
- | <input id=" | + | |
- | placeholder=" | + | |
- | </ | + | |
\\ | \\ | ||
- | + | 결과값이 출력되면서 동시에 input Text란에 입력했던 값이 '' | |
- | 3.3 - 상기의 escapeHtml의 경우와 마찬가지로, | + | |
- | + | ||
- | <code java> | + | |
- | <input id=" | + | |
- | placeholder=" | + | |
- | </ | + | |
\\ | \\ | ||
- | 3.4 - Decrypt Text 버튼을 클릭하여도 jsp의 Input Text 입력란은 아래와 같이 그대로 유지됩니다.\\ | + | ==== 3.1 - 코드 ==== |
- | + | ||
- | <code java> | + | |
- | & | + | |
- | </ | + | |
\\ | \\ | ||
- | + | 코드 수정 | |
- | 3.5 - 하지만 내부에서 Decrypted Result에 | + | |
<code java> | <code java> | ||
- | & | + | <!-- Input Encrypted ID or Password field --> |
+ | <label for=" | ||
+ | <input id=" | ||
</ | </ | ||
\\ | \\ | ||
- | 3.6 - 상기의 값을 내부에서 unescapeHtml 전처리 과정을 거쳐 최종적으로 Decrypted Result 입력란에 표시되는 값은 아래와 같습니다.\\ | + | 코드 수정 후\\ |
<code java> | <code java> | ||
- | <p>MyName<p> | + | <!-- Input Encrypted ID or Password field --> |
+ | <label for=" | ||
+ | <input id=" | ||
</ | </ | ||
\\ | \\ | ||
- | + | 코드 수정 후 Decrypt Text 버튼 클릭 후의 캡쳐\\ | |
- | 3.7 - 정리 : 입력값, JSTL 처리값, unescapeHtml 처리값은 아래와 같습니다.\\ | + | {{: |
- | + | ||
- | 3.7.1 - 입력값, jsp에 표시되는 값\\ | + | |
- | + | ||
- | <code html> | + | |
- | & | + | |
- | </ | + | |
- | + | ||
- | 3.7.2 - JSTL 처리값(내부에서만 존재)\\ | + | |
- | + | ||
- | <code javascript> | + | |
- | & | + | |
- | </ | + | |
- | + | ||
- | 3.7.3 - UnescapeHtml 처리 완료 후 표시되는 값\\ | + | |
- | + | ||
- | <code java> | + | |
- | < | + | |
- | </ | + | |
\\ | \\ | ||
+ | 결과값이 출력되면서 동시에 input Text란에 입력했던 값 '' | ||
+ | \\ | ||
+ | === Ref Link === | ||
+ | [[https:// | ||
+ | [[https:// | ||
\\ | \\ | ||
+ | JSTL Core - Tag out에서 '' | ||
- | 3.8 - unescapeHtml 전처리 과정 실수\\ | + | >> |
+ | >> 결과 문자열의 문자 '' | ||
+ | \\ | ||
+ | ==== 3.2 - unescapeHtml 전처리 과정 실수 | ||
\\ | \\ | ||
- | 3.9.1 - 지저분한 코드(4 lines) & 많은 변수\\ | + | === 3.2.1 - 지저분한 코드(4 lines) & 많은 변수 |
<code java> | <code java> | ||
String unescapeHtml1stRslt = resultData.setDecryptRsltFld(StringEscapeUtils.unescapeHtml(cryptoVO.getDecryptInptFld().replaceAll("& | String unescapeHtml1stRslt = resultData.setDecryptRsltFld(StringEscapeUtils.unescapeHtml(cryptoVO.getDecryptInptFld().replaceAll("& | ||
줄 182: | 줄 154: | ||
\\ | \\ | ||
- | 3.9.2 - 지저분한 코드(4 lines)\\ | + | === 3.2.2 - 지저분한 코드(4 lines) |
<code java> | <code java> | ||
String unescapedHtmlRslt = resultData.setDecryptRsltFld(StringEscapeUtils.unescapeHtml(cryptoVO.getDecryptInptFld().replaceAll("& | String unescapedHtmlRslt = resultData.setDecryptRsltFld(StringEscapeUtils.unescapeHtml(cryptoVO.getDecryptInptFld().replaceAll("& | ||
줄 191: | 줄 163: | ||
\\ | \\ | ||
- | 3.9.3 - 지저분한 코드(2 lines)\\ | + | === 3.2.3 - 지저분한 코드(2 lines) |
<code java> | <code java> | ||
String unescapedHtmlRslt = resultData.setDecryptRsltFld(StringEscapeUtils.unescapeHtml(cryptoVO.getDecryptInptFld().replaceAll("& | String unescapedHtmlRslt = resultData.setDecryptRsltFld(StringEscapeUtils.unescapeHtml(cryptoVO.getDecryptInptFld().replaceAll("& | ||
줄 198: | 줄 170: | ||
\\ | \\ | ||
- | 3.9.4 - 최종(1 line)\\ | + | === 3.2.4 - 최종(1 line) === |
<code java> | <code java> | ||
String unescapedHtmlRslt = resultData.setDecryptRsltFld(StringEscapeUtils.unescapeHtml(cryptoVO.getDecryptInptFld().replaceAll("& | String unescapedHtmlRslt = resultData.setDecryptRsltFld(StringEscapeUtils.unescapeHtml(cryptoVO.getDecryptInptFld().replaceAll("& |