VS2013,MVC,VB,CKEDITOR包
我已经阅读了几个我可以请求单个字段绕过嵌入式HTML验证检查的地方。我需要这样做是因为我使用CKEditor来收集用户帖子的文本。他们都说使用这样的东西:
Dim rawComment = Request.Unvalidated().Form("comment")
这个特殊的例子来自MSDN,虽然我在多个论坛上都看过它。虽然听起来很蠢,但我还是不太明白。
此行是否用于'获取'设置POST表单的方法,或者在' Post' POST后的方法?或者它应该在视图中的代码部分?我在上面的示例中假设'评论'是该字段的名称。我不明白什么' rawComment'是指或如何使用它。
答案 0 :(得分:0)
我觉得这不是直觉明显的,我最终guided得到了我正在寻找的具体答案,逐字段地请求未经验证的输入。
这行代码:
Dim rawComment = Request.Unvalidated().Form("comment")
...将被置于POST方法中。 '评'是POSTed字段的名称,rawComment只是接收未经验证数据的本地变量。
对于我们这些对MVC来说有点新意的人来说,还有一个问题。您希望未经验证的字段不能保留在方法的参数定义中;对于老头来说可能是显而易见的,但不是每个因此,从方法的参数中删除该字段,然后使用上面的语句捕获未经验证的数据。
然后剩下两个步骤:
必须使用某些流程检查数据是否存在恶意输入,可能针对白名单似乎是主要观点。
在执行.savechanges()之前,必须手动将数据分配给对象。也许显而易见,但如果其他一切都在<绑定>定义它很容易忘记这个字段将不再被绑定而不被捕获。