Skip to content

XML-RPC 不支持正确编辑文章而是每次都新建文章 #1973

Description

@Immortalyzy

描述这个 Bug

Typecho 的 XML-RPC 编辑接口在编辑普通文章时,没有原地更新已有文章,而是新建了一篇新文章。

我个人并不清楚这个接口的调用方式,只是让我的agent去修改我的文章时遇到了这个问题。如果是我的agent无法正确识别对应的接口请告诉我应该使用哪个接口,谢谢啦!

复现方式

• 调用 metaWeblog.editPost 编辑一篇已发布文章时,原文章保持不变
• 系统会额外生成一篇新的文章,拥有新的 postId
• 如果调用编辑接口的账号和原作者不是同一个账号,新文章的作者会变成当前 XML-RPC 登录用户
• 这会进一步导致文章 ID、链接、评论归属、作者归属都发生变化

期望的结果

简明扼要地描述你期望看到的结果。

• metaWeblog.editPost 应该原地更新已有文章
• 原文章的 postId 应保持不变
• 原文章作者不应被自动改成当前 XML-RPC 登录用户,除非显式指定要修改作者
• 返回值应符合预期的“编辑成功”语义,而不是返回一个新的文章 ID
• wp.editPost 对普通文章也应遵循同样的原地编辑行为

截图

如果可以的话,请添加截图或视频以帮助解释你的问题。

平台

  • 操作系统版本:Ubuntu 24.04 LTS
  • Apache/Nginx 版本:nginx/1.24.0
  • 数据库版本:mysql Ver 15.1
  • PHP 版本:PHP 8.3.6 (cli)
  • Typecho 版本:1.3.0
  • 浏览器版本:N/A(通过 XML-RPC 客户端复现)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions