Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16065023
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 14:18:57

下载本文示例代码

公布到网页上的Email经常会被一些工具自动提取,一些非法用户就会利用所提取的Email大肆发送垃圾邮件。这些工具大多都是查找链接中“mailto:”后面的信息或是“@”前后的信息来达到提取Email的目的。我在看DotNetNuke(以下简称DNN)的源代码时发现了一个不错的方式来防止这些信息被自动提取。

  在DNN中有这么一段函数(Globals.vb中):

Public Function CloakText()Function CloakText(ByVal PersonalInfo As String) As String

If Not PersonalInfo Is Nothing Then
Dim sb As New StringBuilder

' convert to ASCII character codes,将字符串转换成ASCII编码字符串形式
sb.Remove(0, sb.Length)
Dim StringLength As Integer = PersonalInfo.Length - 1
For i As Integer = 0 To StringLength
sb.Append(Asc(PersonalInfo.Substring(i, 1)).ToString)
If i < StringLength Then
sb.Append(",")
End If
Next

' build script block
Dim sbScript As New StringBuilder

sbScript.Append(vbCrLf & "" & vbCrLf)

Return sbScript.ToString
Else
Return Null.NullString
End If

End Function

公布到网页上的Email经常会被一些工具自动提取,一些非法用户就会利用所提取的Email大肆发送垃圾邮件。这些工具大多都是查找链接中“mailto:”后面的信息或是“@”前后的信息来达到提取Email的目的。我在看DotNetNuke(以下简称DNN)的源代码时发现了一个不错的方式来防止这些信息被自动提取。

  在DNN中有这么一段函数(Globals.vb中):

Public Function CloakText()Function CloakText(ByVal PersonalInfo As String) As String

If Not PersonalInfo Is Nothing Then
Dim sb As New StringBuilder

' convert to ASCII character codes,将字符串转换成ASCII编码字符串形式
sb.Remove(0, sb.Length)
Dim StringLength As Integer = PersonalInfo.Length - 1
For i As Integer = 0 To StringLength
sb.Append(Asc(PersonalInfo.Substring(i, 1)).ToString)
If i < StringLength Then
sb.Append(",")
End If
Next

' build script block
Dim sbScript As New StringBuilder

sbScript.Append(vbCrLf & "" & vbCrLf)

Return sbScript.ToString
Else
Return Null.NullString
End If

End Function

下载本文示例代码


如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取如何防止页面中的信息被提取
阅读(131) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~