在使用API创建主题/帖子时,哪些验证可以绕过以及如何绕过?

您可以绕过哪些验证以及如何绕过?我正试图使用 API 发布,但遇到了以下问题:

  • 熵太低
  • 主题太短
  • 正文过于相似

问题是,很难知道还会遇到哪些其他检查,因此我只会在遇到一个检查时停止,中止并重试。

1 个赞

如果您要从现有数据库导入的帖子超过几篇,则应使用迁移脚本。

您可以在 Ruby 中传递一个 skip_validations 参数,但我不知道您是否可以通过 API 传递它。

但同样,您真的想创建大量非常短的帖子,这些帖子的字符差异很小,并且与其他帖子非常相似吗?您可以通过搜索“熵”、“最小帖子长度”、“最小标题相似长度”或“允许重复标题”等词语来更改这些设置。

4 个赞

是的,这应该有效 :+1: (例如,WP-Discourse 就使用了它)

2 个赞

我认为跳过验证存在一个错误。

当我使用跳过验证来创建主题时,这可以正常工作,并且用户即使通常没有权限也可以在某个类别中创建主题。

但是,当尝试回复同一主题时,验证检查不会被跳过,并且此帖子的创建会失败。

1 个赞

您能详细说明一下您具体指的是哪些发布后验证吗?您收到什么错误?

你确定吗?我的理解是 skip_validations 就像 post_creator.rb 底部的选项部分所说的那样:

它主要用于忽略通过站点设置添加的约束,例如:

  • 最小帖子长度
  • 最小正文熵
  • 最小主题标题长度

我认为它也用于忽略发帖速率限制。

我不认为它允许用户在他们没有权限发帖的类别中创建主题。

2 个赞