配置 Tridion UGC 垃圾邮件过滤器的正确方法是什么?(。网)

Dom*_*nin 6 service tridion

我已经实现了一个基于 Tridion UGC API 的垃圾邮件过滤器,现在我希望配置我的 UGC Web 服务来使用它。到目前为止,通过服务添加评论时似乎没有调用垃圾邮件过滤器。我目前的配置如下:

我已将程序集 DLL 放在 Web 服务应用程序的 bin 目录中。我编辑了该web.config文件以添加以下内容:

<appSettings>
    <add key="Comment.SpamFilter.Implementation" value="UGCDemo.BadWordsFilter"/>
    <add key="Comment.SpamFilter.Assembly" value="SpamFilter.dll"/>
</appSettings
Run Code Online (Sandbox Code Playgroud)

我能够验证实现类和程序集的名称,如以下 PowerShell 输出所示:

PS C:\inetpub\LiveCDService
> ls

    Directory: C:\inetpub\LiveCDService


Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----         5/28/2012   5:05 PM            bin
-a---         11/4/2011   3:38 PM        212 access_token.svc
-a---         11/4/2011   3:38 PM        323 Global.asax
-a---         11/4/2011   3:38 PM        138 linking.svc
-a---         11/4/2011   3:38 PM        198 odata.svc
-a---         5/28/2012   5:41 PM      11073 Web.config
-a---         5/28/2012   5:10 PM      11073 Web.config~


PS C:\inetpub\LiveCDService
> add-type -path .\bin\SpamFilter.dll
PS C:\inetpub\LiveCDService
> $foo = new-object UGCDemo.BadWordsFilter
PS C:\inetpub\LiveCDService
> $foo | gm


   TypeName: UGCDemo.BadWordsFilter

Name            MemberType Definition
----            ---------- ----------
Equals          Method     bool Equals(System.Object obj)
GetHashCode     Method     int GetHashCode()
GetType         Method     type GetType()
ToString        Method     string ToString()
ValidateComment Method     Tridion.ContentDelivery.UGC.Web.Model.Comment Valid
Run Code Online (Sandbox Code Playgroud)

我在调试模式下进行了日志记录,但看不到任何可能与加载垃圾邮件过滤器程序集或任何类似内容相关的输出。我还需要哪些其他配置更改才能使此功能正常工作?我可以应用哪些其他测试来发现有关问题的更多信息?

小智 6

我认为问题是试图在 Web 服务中安装 SpamFilter。正如文档中所述,必须在 Web 应用程序中配置 SpamFilter:

3- 通过打开位于 Web 应用程序根文件夹中的 UGC Web 应用程序的配置文件 web.config 来配置垃圾邮件过滤器