escape-unescape
escape, unescape
ํ์ถ, ๋ํผ, ๋ชจ๋ฉด
๋ญ๊ฐ๋ฅผ ํผํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค๊ณ ๋ณผ ์ ์์๋ฏ.
์ค๋ช
ํน์ ๋ฌธ์๋ ํน์ํ ๊ธฐ๋ฅ์ผ๋ก ์ฌ์ฉํ๊ฒ ๋ค๊ณ ์ฝ์ ๋์ด์์
์๋ฅผ ๋ค๋ฉด ์น์์๋ URL,
http://a.com?name=egoing&job=programmer&job=programmer
์์ ๋ณด๋ฉด,&
๋ฌธ์๋ ํ๋ผ๋ฏธํฐ๋ฅผ ๊ตฌ๋ถํ๋๋ฐ ์ฌ์ฉํ๊ณ ์์.๊ทธ๋ฐ๋ฐ
http://a.com?name=egoing&job=programmer&blogger
์ด๋ฐ ํ์์ URL์ด ์จ๋ค๋ฉด?programmer&blogger
์์ ์ฌ์ฉ๋&
ํน์ํ ๊ธฐ๋ฅ์ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋ ๊ฒ์ด ์๋.๊ทธ๋ฅ ๋ฌธ์ ๊ทธ๋๋ก ์ฌ์ฉํ๊ณ ์ถ์ ๊ฒ.
์ด๋ฐ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ ๊ฒ์ ๋ง๊ธฐ ์ํด์ (ํํผ ํ๊ธฐ ์ํด์), ์ด๋ฌํ ์น์์๋ ํน์ํ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋๋๋ก ์ฝ์๋์์ง๋ง ๊ทธ๋ฅ ๋ฌธ์ ๋ก ์ฌ์ฉํ๊ธฐ ์ํด์๋ ๋ณํ, ์นํํด์ค์ผํ๋ค.
http://a.com?name=egoing&job=programmer%26blogger
& -> %26 ์ผ๋ก ๋์์. (encodeURL)
์ด๋ฌํ ๊ณผ์ ์ ์ด์ค์ผ์ดํ ์ด๋ผ ๋ถ๋ฅธ๋ค.
์ ๋ฆฌํ์๋ฉด,
ecsape ๋, ํน์ ๋ฌธ์(์ฝ์๋ ๋ฌธ์) ๋ฅผ ์ฝ์๋ ๋ชฉ์ ์ด ์๋ ๋ค๋ฅธ ๋ชฉ์ (๊ทธ๋ฅ ๋ฌธ์)๋ก ์ฌ์ฉํ๊ธฐ ์ํด์ ์นํํด์ฃผ๋ ๊ฒ์ ์๋ฏธ.
unecsape ๋, ecsape ๋ ๋ฌธ์ (์นํ๋ ๋ฌธ์) ๋ฅผ ์๋ ๋ฌธ์๋ก ๋๋๋ฆฌ๋ ์์ .
Javascript
encodeURI()
Not Escaped:
A-Z a-z 0-9 ; , / ? : @ & = + $ - _ . ! ~ * ' ( ) #
์ ๋ฌธ์๋ฅผ ์ ์ธํ ๋ชจ๋ ๋ฌธ์๋ฅผ UTF-8๋ก ์นํ,์ธ์ฝ๋ฉ ํ๋ค (escape)
decodeURI()
์ฐธ๊ณ ๋ฌธ์ : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURI
HTML , Java.. etc..
ํด๋น ์ธ์ด์์ ์ค์ ํ ์ฝ์๋ ๋ฌธ์๊ฐ ์๊ณ , ์ฌ์ฉ์๊ฐ ํด๋น ์ฝ์๋ ๋ฌธ์๋ฅผ ๊ทธ๋ฅ ๋ฌธ์ ๋ก ์ฌ์ฉํ๊ณ ์ถ์ ๋๋ ์ด์ค์ผ์ดํ์ ํด์ผํจ.
์ฆ ํ๊ฒฝ์ ๋ฐ๋ผ์, ์ฝ์๋ ๋ฌธ์ ๋ค๋ฅด๋ค๋ ๊ฑธ ์ ์ ์์๋ฏ.
์ ๋ฆฌ
๋จ์ด์์ ๋ํ๋๋ฏ์ด, ๋ญ๊ฐ๋ฅผ ํผํ๊ธฐ ์ํด์์.
๊ทธ ๋ญ๊ฐ๊ฐ ๋ฌด์์ด๋? ์ฝ์๋ ๋ฌธ์์.
์ฝ์๋ ๋ฌธ์์ง๋ง, ๊ทธ ์ฉ๋๋ก ์ฌ์ฉํ๊ณ ์ถ์ง ์์ ๋
escape
๋ฅผ ์ฌ์ฉํ๋ค๊ณ ๋ณด๋ฉด ๋ ๋ฏ.๊ทธ๋ฆฌ๊ณ ํ์ถ๋ ๋ฌธ์๋ค์, ์ ์์ผ๋ก ๋๋ฆฌ๊ณ ์ถ์ ๋ (์ฝ์๋ ๋ฌธ์๋ค๋ก),
unescape
ํ๋ค๊ณ ๋ณด๋ฉด ๋ ๋ฏํจ.
์ฐธ๊ณ
https://opentutorials.org/course/50/199#:~:text=unescape%EB%8A%94%20escape%EB%A1%9C%20%EC%9D%B4%EC%8A%A4,%EB%8A%94%20decodeURI%2C%20decodeURIComponent%EA%B0%80%20%EC%9E%88%EB%8B%A4.
https://steady-snail.tistory.com/111
https://starrecode.tistory.com/11
Last updated