domcfg中的Reason Type字段

时间:2016-04-12 08:45:05

标签: forms lotus-notes captcha lotus-domino lotus-formula

为了确保我的XPage Web应用程序更安全,我在domcfg.nsf中的自定义登录表单中放置了验证码。 我按照链接建立我的验证码: http://www.notesmail.com/home.nsf/tip20100506

问题是登录时,如果验证码被误解,我无法将字段的值更新为reasontype,这会让我显示消息"错误的验证码。" 我添加了此操作以检查输入的文本是否等于验证码:

@If ( @UpperCase ( MyCaptchaField ) = TheRealValueOfMyCaptcha ; FIELD reasontype: = "6" ; "")

我添加了一个条件,如果reasontype的值等于" 6"我会在计算的字段错误消息中显示错误。 。 这不起作用,即使没有写入验证码,我也可以访问我的XPage。 我觉得reasontype字段只取决于5个预定义的条件。

是否有解决方案在登录表单中添加其他条件?

4 个答案:

答案 0 :(得分:3)

你在冒号和相同的字符之间有一个空格。这意味着字符被视为两个运算符 - 列表连接运算符和相等运算符。

而不是这个

@If ( @UpperCase ( MyCaptchaField ) = TheRealValueOfMyCaptcha ;  FIELD reasontype: = "6" ; "")

你需要这个:

@If ( @UpperCase ( MyCaptchaField ) = TheRealValueOfMyCaptcha ;  FIELD reasontype := "6" ; "")

然而,经典的风格是:

FIELD reasontype := @If ( @UpperCase ( MyCaptchaField ) = TheRealValueOfMyCaptcha ;  "6" ; "");

答案 1 :(得分:1)

你有语法错误......这是更正后的代码:

hPlot(Amount ~ Filter, data = data_1, type = 'bar', group.na = 'NA\'s')
hPlot(Amount ~ Filter, data = data_2, type = 'bar', group.na = 'NA\'s')

答案 2 :(得分:1)

该代码适用于旧式Domino Web表单,而不是XPage。另一种方法是使用XPages特定的实现并使用AJAX登录帖子。以下是我发现的几个OpenNTF: https://www.openntf.org/main.nsf/project.xsp?r=project/Xpages%20Captcha%20Custom%20Control https://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=Recaptcha%20Custom%20Control

这是一篇博文,指向Declan Lynch的另一个OpenNTF项目,其中包含AJAX登录Custom login forms in xpages? 这里还有一个用于登录自定义控件的XSnippet(doLogin是用于登录的SSJS方法)https://openntf.org/XSnippets.nsf/snippet.xsp?id=dojo-login-dialog-custom-control

答案 3 :(得分:0)

我试过这段代码。但问题是它会自动连接到我的应用程序并忽略验证码的验证。

我找到了一个解决方案,如果验证码错误并且工作正常,则会在“onsubmit”操作中重定向到注销页面,并提供网络警报以避免使用reasontype字段。

感谢您的帮助。