따뜻한 대한민국 겨울만들기

안녕하세요.

PHP에 관한 글들은 꽤 있는데..

JSP에 관한 글들이 없는것 같아 올립니다.

플래시에서 값을 주고 받을때 URLLoader 를 사용합니다.
( 사용법은 레퍼런스에 있으므로 생략합니다. )

플래시에서 값을 전달하고 다시 받아올려면 서버페이지(php, jsp, asp)에서 값을 뿌려줘야 합니다.


[AS2.0 : PHP, JSP] - &id=aaa&email=bbb&cphone=ccc&

기존의 2.0방식에서는 별다른 제약이 없었습니다.

&id=aaa&email=bbb&cphone=ccc&

이렇게 뿌려주게만 하면 되었죠.

&id=aaa&email=bbb&cphone=ccc

이런식으로 끝에 &를 빼면

찌끄레기를 끌고 왔던 현상은 간혹 있었습니다.

[AS3.0 : PHP] - id=aaa&email=bbb&cphone=ccc

많이들 알고 계실겁니다.

id=aaa&email=bbb&cphone=ccc

2.0과는 달리 맨 앞과 끝의 '&'이 없어야 합니다.

이렇게 값을 뿌려주시면 플래시에서 값을 잘 받아 올 수 있습니다.

&id=aaa&email=bbb&cphone=ccc& 와 같이 2.0방식으로 사용하시면,

바로...

"URLVariables.decode()에 전달된 String은 이름/값 쌍을 포함하는 URL 인코딩된 쿼리 문자열입니다."

이라는 에러를 보실수 있으시겠습니다.


[AS3.0 : JSP] - =&id=aaa&email=bbb&cphone=ccc

JSP는 또 색다릅니다.

PHP와 같이

id=aaa&email=bbb&cphone=ccc

이런식으로 값을 뿌려주면...

%0Aid=aaa&email=bbb&cphone=ccc

'%0A' 라는 엔터 값 등이 찌끄래기로 들어가 버립니다.

이 엔터 값의 정체는...

 jsp페이지에 코딩 할 때 들어갔던 모든 엔터값들 입니다.

페이지에서 엔터를 10번 눌러 코딩을 하였다면...

플래시에서 받은 값은,

%0A%0A%0A%0A%0A%0A%0A%0A%0A%0Aid=aaa&email=bbb&cphone=ccc

이렇게 찌끄래기가 10개가 포함되어 ... 플래시는 받아옵니다.

cphone=ccc&email=bbb&%0A%0A%0A%0A%0A%0A%0A%0A%0A%0Aid=aaa

이렇게 순서가 뒤바껴 받아지기도 하지요.

즉,

처음 변수값 ( id=aaa ) 은 플래시에서 사용하지 못하게 되는겁니다.

저 엔터값이 들어가지 않게 하려면 jsp를 한줄로 코딩하란 말인데... 그렇겐 못하죠.

따라서..

맨 처음 변수는 사용하지 않는다는 의미로

'=&' 이 문자를 맨 앞에 붙여줍니다.

=&id=aaa&email=bbb&cphone=ccc  ->  이런식으로요.

이렇게 하시면,

모든 엔터값들은

%0D%0A%0D%0A%0D%0A%0D%0A%0D%0A%0D%0A=&id=aaa&email=bbb&cphone=ccc

와 같이 모든 찌끄래기는 맨 처음 변수에서 다 처리되어 플래시에 받아지므로...

PHP와 똑같이

값을 잘 받아 사용하실 수 있으시겠습니다.

그럼 수고하시겠습니다.