Akismet(防Spam垃圾留言)的ASP类
今天将原来的日志评论审核机制换成了Akismet识别的方式。
Akismet是WordPress中的一个优秀的防止Spam的插件,使用Akismet必须要去申请一个WordPress的Key,这个Key只要注册WordPress官方的用户就可以免费得到。但并不是只可以在WordPress中使用,只要你去阅读Akismet的API,你就可以整合到其他的博客程序中了。我这里提供一个Akismet的ASP类和一些API说明,想在自己的ASP程序中整合的话不妨看一看。
请先下载Akismet(ASP),废话不多说了,先看一段下面的代码:
1 2 3 4 5 6 7 8 9 10 |
Set SpamSentinel = New Akismet SpamSentinel.initialize "你的API Key","你的博客地址(格式:http://zhangqian.me/)" SpamSentinel.setPermalink "评论提交后相对应的日志url" SpamSentinel.setCommentType "comment" SpamSentinel.setCommentAuthor "评论用户名" SpamSentinel.setCommentAuthorEmail "评论者邮箱" SpamSentinel.setCommentAuthorUrl "评论者网址" SpamSentinel.setCommentContent "评论者内容" isSpam = SpamSentinel.isSpam() '调用isSpam()方法来判断是否为Spam,如果是则返回True Set SpamSentinel = Nothing |
最后,你可以根据 isSpam 这个变量返回的值来执行相应的操作。
我的这个类中,在类初始化函数中自动获取了用户的IP,你也可以自己来写一个函数,然后在调用类的时候来指定IP地址。类中“submitSpam()”函数是用来向Akismet报道一个Spam,报告后要通过审核,所以并不是会立即生效,所以你也可以在自己的程序中加入相应的屏蔽操作。“submitHam()”函数是来向Akismet说明提交的是一个标记错误的Spam,也要经过相应的审核。
PS,发现做为一个网民,不翻墙不行,所以今天下载了最新的Tor,终于又可以顺利的翻墙了:)