๋ณธ๋ฌธ์œผ๋กœ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

์ƒํ™ฉ๋ณ„ ์ •๋ฆฌ

์ƒํ™ฉ ์ž์‹์ฐฝ์—์„œ ๋ถ€๋ชจ์ฐฝ ์ œ์–ด๋ฐฉ๋ฒ•
iframe ์•ˆ์—์„œ window.parent.location.href = '/member/login';
์ƒˆ ์ฐฝ (window.open) window.opener.location.href = '/member/login';

 

์‚ฌ์šฉ ์˜ˆ์ œ : ์ƒˆ ์ฐฝ์—์„œ ๋ถ€๋ชจ ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๋กœ ๋ณด๋‚ด๊ธฐ

if (window.opener) {
    // ์ƒˆ ์ฐฝ์„ ๋„์šด ๋ถ€๋ชจ์ฐฝ์ด ์กด์žฌํ•  ๋•Œ
    window.opener.location.href = '/member/login';
    window.close(); // ํ•„์š”ํ•˜๋ฉด ์ž์‹์ฐฝ๋„ ๋‹ซ๊ธฐ
} else {
    // ๋ถ€๋ชจ์ฐฝ์ด ์—†์œผ๋ฉด ์ž๊ธฐ ์ž์‹  ์ด๋™
    window.location.href = '/member/login';
}

 

์„œ๋ฒ„๋‹จ ์ธํ„ฐ์…‰ํ„ฐ์—์„œ ์‘๋‹ต ๋‚ด๋ณด๋‚ผ๋• ์ด๋ ‡๊ฒŒ

response.setContentType("text/html; charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<script>");
out.println("alert('๋กœ๊ทธ์ธ ์„ธ์…˜์ด ๋งŒ๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ ๋กœ๊ทธ์ธ ํ•ด์ฃผ์„ธ์š”.');");
out.println("if (window.opener) {");
out.println("  window.opener.location.href='/member/login';");
out.println("  window.close();");
out.println("} else {");
out.println("  window.location.href='/member/login';");
out.println("}");
out.println("</script>");
out.flush();

 

  • window.opener๋Š” ์ƒˆ ์ฐฝ(window.open)์„ ๋„์šด ๋ถ€๋ชจ ์ฐฝ ๊ฐ์ฒด
  • ๋ณด์•ˆ์ƒ window.opener ์ ‘๊ทผ์ด ์•ˆ ๋˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์–ด์„œ ๊ฐ™์€ ๋„๋ฉ”์ธ ๋‚ด์—์„œ๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค.
  • iframe์ด๋ž‘์€ ์ „ํ˜€ ๋ณ„๊ฐœ์˜ ๊ฐ์ฒด๋‹ˆ๊นŒ ํ˜ผ๋™ ์ฃผ์˜!

 

 

๋ฐ˜์‘ํ˜•