加载资源失败: 服务器响应状态码为 422

一些用户在尝试加入新频道时会收到一条通用的“发生错误”消息。
发生这种情况时,控制台中会报告一个错误:

无法加载资源:服务器响应状态为 422
这指向 URL https://domain.com/chat/chat_channels/ID/follow.json,其中 ID 是聊天 ID。
该“.json”文件包含:

{
    "errors": [
        "Slug is invalid"
    ],
    "error_type": "record_invalid"
}

我最好的猜测是,这与聊天名称包含西里尔字符有关。当我尝试重命名该频道以使用英文名称时,它会显示“slug is invalid”错误,并且不允许我将其更改为任何内容。该聊天有一个 URL https://domain.com/chat/channel/ID/-ID

1 个赞

我刚才遇到了一个类似的问题。当我尝试创建一个频道时,它告诉我 Slug 无效,无论我使用什么 Slug。
另外,我猜这是因为我使用的频道包含非拉丁字母。这是我删除其中一个此类频道时出现的问题。

我将改进错误消息,但目前您可以通过更改此 SiteSetting 来解决此问题:slug_generation_method

使用 encoded 应该可以解决问题。

2 个赞

我注意到 Chat 已成为核心插件,因此我已将其从 app app.yml 中移除并重新构建了 discourse。问题现在似乎已得到解决。

4 个赞