문제

사용하는 방법이 있나요 JQuery 이메일 주소를 숨기거나 암호화하기 위해 HTML 페이지의 구문을 변경하지 않고 href?

도움이 되었습니까?

해결책

JQuery를 사용하는 것은 클라이언트 측에 있기 때문에 원하는 경로가 아닐 수도 있습니다.서버 측에서 암호화하지 않는 이유가 있습니까?

다른 팁

글쎄, 코멘트로서, 소스에 숨겨진 이메일 주소가 있고 jQuery를 사용하여 올바른 주소를 갖도록 링크를 수정하거나 구성하기를 원할 것입니다.왜냐하면 봇은 자바스크립트 실행 결과가 아니라 소스를 보기 때문입니다 ;-)

의미론적 나치는 "암호화"가 아니라 "인코딩"이라고 말합니다.암호화는 디코딩하려면 비밀이 필요함을 의미합니다.다음으로 변환 중 HTML 엔터티 구문 괜찮을 것이다 부호화 인간이 엿보는 것을 막기 위한 프로세스이지만 봇은 쉽게 해독할 수 있습니다.

Mike Stone이 제안한 것에 편승하여 제가 할 일은 서버 측에서 이를 암호화하고 서버 측에서 이를 해독하여 JSON(mvc 프레임워크의 jsonresult, 웹의 jsonresult)으로 반환하는 무언가를 갖는 것입니다. 서비스, ​​http 처리기 등).그렇게 하면 원할 때 jQuery를 사용하여 이메일 주소를 난독화할 수 있지만 여전히 Java 스크립트를 지원하지 않는 봇을 혼란스럽게 할 것입니다.다시 말하지만 이것은 완벽한 솔루션은 아니지만 귀하가 찾고 있는 것을 수행할 수 있습니다.

내가 한 일은 렌더링될 때 난독화하고 숨긴 다음 자바스크립트를 사용하여 난독화를 수정하고 링크를 표시하는 것입니다.

예를 들어 서버에서 다음을 렌더링할 수 있습니다.

<a href="mailto:some_address^^some_domain$$com" style='display:none'>Email me</a>

그런 다음 Javascript를 사용하면 정규식을 사용하여 바꿀 수 있습니다 ^^ ~을 위한 @ 그리고 $$ ~을 위한 .

어떤 계획을 생각해내더라도 괜찮을 것입니다.물론 봇이 자바스크립트를 이해한다면 상관없습니다.

당신이 접근하는 봇의 95%를 차단하고 나머지 사용자는 주소를 제대로 볼 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top