我在编辑论坛回复时随机收到 404 错误。
当编辑成功时,会向端点 /posts/:post_id 发送 PUT 请求,并返回 200 响应。
但当编辑失败时,我在开发者工具中看到向 /post_replies/:post_id 发送的 PUT 请求返回了 404。刷新页面后,错误消失,我就能正确保存编辑了(通过 /posts/:post_id,:post_id 保持不变)。
我不确定是否存在某种特殊情况导致 /posts 被错误地变成了 /post_replies,还是说这是其他问题。最近我将服务器的内存增加了四倍,但在日志中并未发现任何异常。
感谢任何帮助。
2 个赞
我在尝试编辑他人的帖子时,持续遇到这些随机错误。这种情况既发生在旧帖子上,也发生在新帖子上,但总是随机出现:
刷新页面后再保存编辑,问题就会消失:
我使用的是最新版本,可以确认该问题依然存在:尝试编辑其他用户的帖子时,会随机弹出一个显示 not_found 消息的对话框:
请求的 URL 或资源未找到。
如果我刷新页面并再次点击“保存编辑”按钮,错误就会消失,编辑也能成功保存。
Falco
(Falco)
4
这两个请求分别向不同的 URL 发送了 PUT 请求。
好的,但为什么呢?我在同一篇帖子中点击的是同一个“保存编辑”按钮,唯一的区别只是刷新了页面。
Falco
(Falco)
6
下次出现这种情况时,不妨检查一下浏览器的回溯日志?由于它正在访问不同的端点,在 EmberJS 应用中可能会通过不同的方法进行处理。
1 个赞
@Falco 又发生了同样的问题。我在遇到错误后打开控制台,只看到这些内容:

如果我在控制台打开的情况下再次尝试保存:
然后刷新页面,它允许我编辑:

这是发起者的路径(VM73:1 脚本):
1 个赞
我刚更新到 2.7.0.beta2,问题依然存在:
- 尝试编辑帖子回复 47994
- PUT
https://mydomain.com/post_replies/47994 => 404 请求的 URL 或资源未找到。在控制台中显示:资源加载失败,服务器返回状态码 404 () /post_replies/47994:1
- 刷新页面
- 再次尝试编辑帖子回复 47994
- PUT
https://mydomain.com/posts/47994 => 200 成功
如果还有其他有助于调试的信息,我很乐意提供。
@Falco 我终于弄明白了如何稳定地复现这个 bug:
- 禁用“启用过滤后的回复视图”
- 点击回复上的箭头:
- 点击箭头跳转到原始消息:

- 点击编辑图标:
- 进行修改并点击“保存更改”。此时会弹出一个对话框,提示 URL 或资源未找到(404)。
4 个赞
pmusaraj
(Penar Musaraj)
12
7 个赞
像往常一样,感谢您对我们的耐心,Nacho——当您提供非常详细的复现步骤时,我们几乎总能迅速修复问题!
4 个赞