권장 : ASP 출력 n 행 및 N 목록에 대해 이야기 해 봅시다. 거의 모든 사이트에서는 출력 목록, 제품 목록 등을 사용해야합니다. 출력 방법은 컨텐츠에 따라 다릅니다. 일반적으로 하나의 셀이 얻어집니다
웹 페이지에 게시 된 이메일은 종종 일부 도구에 의해 자동으로 추출되며 일부 불법 사용자는 추출 된 이메일을 사용하여 스팸을 보내는 것입니다. 이러한 도구의 대부분은 Mailto의 뒤에있는 정보를 검색하고 있습니다. 또는 링크의 @ 전후에 정보를 추출하기위한 목적을 달성합니다. DotnetNuke의 소스 코드 (DNN이라고 함)를 볼 때이 정보가 자동으로 추출되는 것을 방지하는 좋은 방법을 찾았습니다.
| 다음은 인용 된 내용입니다. DNN (Globals.vb)에는 그러한 기능이 있습니다. public function cloaktext () 함수 cloaktext (byval personalInfo as String) PersonalInfo가 아니라면 아무것도 아닙니다 새로운 StringBuilder로 SB를 DIM 'ASCII 문자 코드로 변환, 문자열을 ASCII 인코딩 된 문자열로 변환 sb.remove (0, sb.length) dim stringlength as integer = personalInfo.length -1 I의 경우 정수 = 0에서 StringLength에서 sb.append (ASC (personalInfo.Substring (i, 1)). Tostring) 내가 <stringLength라면 sb.append (,) 끝 If 다음 '스크립트 블록 빌드 새로운 stringbuilder로 dim sbscript sbscript.append (vbcrlf & <script language = javaScript> & vbcrlf) sbscript.append (<!- & vbcrlf) 'CHARCHODE 메서드에서 : 일부 유니 코드 문자 값에서 문자열을 반환합니다. sbscript.append (document.write (string.fromcharcode (& sb.tostring &)) & vbcrlf) sbscript.append (//-> & vbcrlf) sbscript.append (</script> & vbcrlf) sbscript.tostring을 반환합니다 또 다른 null.nullstring을 반환합니다 끝 If 엔드 기능 이 코드는 먼저 ASCII 인코딩 된 문자열 양식으로 암호화되어야하는 정보를 변환 한 다음 javaScript의 Document.Write 메소드를 사용하여 페이지에 기록합니다. 나는 다음 효과를 테스트했는데 꽤 좋았습니다. 당신은 그것을 시도 할 수도 있습니다. <html> <헤드> <meta http-equiv = content-type content = text/html = gb2312; <title> 테스트 정보 암호화 </title> </head> <body> 추출 할 수있는 링크 : <a href = mailto : [email protected]> [email protected] </a> <br> 추출 할 수없는 링크 : <스크립트 언어 = javaScript> <!- Document.Write (String.FromCharCode (60,97,32,104,114,101,102,61,34,109,97,105,108,116,111,120,120,64,116,111,109, 46,99,111,109,34,62,120,120,120,64,116,111,109,46,99,111,109,60,47,97,62)))) //-> </스크립트> </body> </html> |
공유 : ASP 요청 처리에 대한 내부 토론 ASP 요청은 WAM 객체에 의해 초기화됩니다. 그런 다음 WAM 객체는 ASP-Runtime으로 보냅니다. ASP-Runtime은 내부 페이지 객체를 만들어 응답합니다. WAM 객체는 프리 스레드 객체입니다. asp.dll과 같은 Isapi 확장이라고 부를 때