Tuesday, April 28, 2009

웹 개발 팁 -브라우저 측에서 무얼 보내는지 로그를 보고 싶을 때

어제, 동료 한국인 개발자로부터, submit이 두 번일어나는 데, 어디서 그런 문제가 생기는 지 모르겠다고 하는 Help가 있었습니다.

"type=submit인 것에 onClick으로 javascript 걸어놓고, 다시 자바스크립트가 submit하게 되어 있는거 아냐??"

실제로 저런 경우라면 submit이 두 번 발생합니다.
그런데 테스트용으로 보내준 URL에는 그런 내용은 아니었습니다. 거기에다가 IE일 때는 괜찮은데, FireFox인 경우에만 발생한다고 합니다.(서버쪽의 로그까지 보내주어 두 번 기록되어 있는 것은 확인했습니다.)

FF를 보고 있을 때는 Refresh할 때의 Flash등도 없어, 한 번 submit하는 느낌이었습니다만, 이것 만으로 한 번 보내는 지 어떤 지 알 수 없었습니다.

이런 종류의 디버깅에 시간을 많이 뺏기는 것은 정말 속상합니다.
FireFox의 FireBug로 어떤 전송이 일어나는 지 보려고 시도했었습니다만, Net 탭에 있는 전송 히스토리는, 브라우저가 document를 다시 읽을 때 초기화되어버려, 이 경우에는 도움이 되지 못했습니다.

어쩌면 서버측에서 Redirection하고 있는 지 모르겠습니다만, 우선 클라이언트 측의 코드에서 문제가 없는 지 확인하고 넘어가야겠지요.
이런 경우 저는 지금까지 마이크로소프트의 네트웍 모니터를 사용했습니다. 패킷을 캡춰해서 볼 수 있는 유틸리티입니다. 다운로드는 여기
사용방법은 꽤 간단하므로, googling하면 자세히 소개하는 곳이 있을 터입니다.

그런데, 이런 경우라면, 브라우저측에서 전송하는 로그를 기록하는 것이 있다면 해결 할 수 있기 때문에, 파이어 폭스의 플러그인에 무언가 있지 않을까 하는 생각이 들어 검색을 해보고, Tamper Data라고 하는 것을 찾아 실행해봤습니다.


gmail이나, naver를 tamper data로 보고 있으면, 굉장히 열심히 백그라운드로 보내고 받고 하는 것을 볼 수 있습니다. 이정도면 도움이 될 것 같습니다. 오늘은 휴일이기 때문에 내일 회사에 가면 알려주어야겠네요.

외국에서 고생하는 한국인 엔지니어들, 모두 모두 감바레!

No comments: