2009-04-20 2 views
0

일부 자바 스크립트 클라이언트 측 테스트 (예 : 브라우저 창 크기)를 사용하여 클릭 연결이 유효한지 테스트해야합니다.원래 참조자를 변경하지 않고 리디렉션 중 자바 스크립트 실행

그러나 원래의 클릭 리퍼러는 동일하게 유지하고 싶습니다. 리디렉션을 수행하고, 일부 자바 스크립트를 실행하고, 브라우저 세부 정보를 캡처 한 다음 원래의 리퍼러 값을 그대로 유지하면서 클릭 연결을 계속할 수있는 방법이 있습니까?

답변

0

없는 경우 리디렉션 지시와 함께 캡처하여 반송하는 "브라우저 세부 정보"중 하나 인 리퍼러 만 포함하면됩니다. 리퍼러는 클라이언트에서 자동으로 사용할 수 없으므로 다음과 같이 작동합니다.

  1. 클라이언트는 아마도 리퍼러를 포함하여 초기 요청을 보냅니다.
  2. 서버는 Javascript 변수의 리퍼러를 포함하여 클라이언트 측 테스트 페이지를 동적으로 생성합니다.
  3. 클라이언트는 2 단계에서 저장된 참조 값을 포함하여 클라이언트 특성을 수집합니다.
  4. 클라이언트는 수집 된 특성을 새 리디렉션 요청으로 서버에 보냅니다.
  5. Referer 헤더가 Javascript 요청과 동일한 값을 가지지 않으므로 서버는 HTTP 로그에는 없지만 어딘가에서 참조 매개 변수를 기록합니다.

물론 1 단계에서 Referer 헤더를 포함하여 클라이언트에 따라 다르므로 아무 것도 신뢰할 수 없다는 것을 알고 있습니다. 아무런 일이 일어나지 않을 것이라는 보장은 없으며, 정확하다. 또한 네비게이션 요청의 유효성을 결정하기 위해 클라이언트 측 검사 (특히 윈도우 차원과 같은 임의의 검사)를 수행하는 지혜에 대해 질문합니다.