我遇到了 Discourse Chat 插件的两个独立 bug,特此报告。
1. API:page_size 在 direction=past 时被忽略
通过 API 查询聊天消息时,当获取较旧消息时,page_size 参数无法按预期工作。无论指定的大小如何,它总是返回最多 50 条。
重现步骤:
向聊天消息端点发出 API 调用,并附带以下参数:
-
target_message_id:[您看到的最后一条消息的 ID] -
direction:past -
page_size:5(或小于 50 的任何数字)
预期行为:
API 应返回一个 JSON 对象,其中包含在 target_message_id 之前发送的最多 5 条消息。
实际行为:
API 返回 50 条消息,忽略了 page_size=5 参数。在这种特定情况下,它似乎被硬编码为最大页面大小。
2. UI:表情符号在聊天线程预览中渲染不正确
在聊天频道列表中,线程中最新消息的预览无法正确渲染表情符号。它显示原始表情符号短代码,而不是图形表情符号。
重现步骤:
-
转到某个聊天频道。
-
创建一个新线程或回复现有线程。
-
发送一条包含表情符号的消息(例如,“你好世界
”)。 -
导航回列出所有频道和线程的主聊天视图。
预期行为:
该线程的消息预览应显示渲染后的表情符号,例如:“你好世界
”。
实际行为:
消息预览显示未渲染的文本短代码:“你好世界 :shaking-hand:”。
感谢您在 Discourse 上所做的出色工作,并感谢您调查这些问题!