리소스 로드 실패: 서버가 422 상태 코드로 응답했습니다

일부 사용자가 새 채널에 가입을 시도할 때 일반적인 “오류가 발생했습니다” 메시지가 표시됩니다.

이와 동시에 콘솔에 다음 오류가 보고됩니다:

Failed to load resource: the server responded with a status of 422

이는 https://domain.com/chat/chat_channels/ID/follow.json이라는 URL을 가리키며, 여기서 ID는 채팅 ID입니다.

해당 “.json” 파일에는 다음 내용이 포함되어 있습니다:

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

제 추측으로는 채팅 이름에 키릴 문자가 포함되어 있기 때문인 것 같습니다. 해당 채널의 이름을 영어로 변경하려고 하면 "슬러그가 유효하지 않습니다"라는 오류가 발생하여 어떤 이름으로든 변경할 수 없습니다. 이 채팅의 URL은 https://domain.com/chat/channel/ID/-ID입니다.

1개의 좋아요

방금 비슷한 문제에 부딪혔습니다. 채널을 생성하려고 하면 어떤 슬러그를 사용하든 Slug가 유효하지 않다는 메시지가 표시됩니다.
또한, 제가 사용한 채널 이름에 라틴 문자가 아닌 문자가 포함되어 있어서 그런 것 같습니다. 이런 채널 중 하나를 삭제할 때 이 문제가 발생합니다.

에러 메시지를 개선할 예정이지만, 당장은 이 SiteSetting(slug_generation_method)을 변경하면 해결할 수 있을 것입니다.

encoded를 사용하면 작동해야 합니다.

2개의 좋아요

Chat가 코어 플러그인으로 변경된 것을 확인했기 때문에, app app.yml에서 Chat를 제거하고 discourse를 다시 빌드했습니다. 이제 문제가 해결된 것 같습니다.

4개의 좋아요