You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DNN 9.5.0中2sxc(11.7.3)删除项报405错误,资源不支持GET方法

解决2sxc删除接口返回405 Method Not Allowed的问题

这个问题我之前帮人排查过,核心原因特别清晰——你用了GET请求去调用删除接口,但2sxc的/api/2sxc/cms/list/delete接口只接受POST或DELETE请求,完全不支持GET方法,所以才会返回{"Message":"The requested resource does not support http method 'GET'."}这个错误。

为什么会出现这个问题?

2sxc的CMS API严格遵循REST设计规范:

  • GET请求被限定为只读操作,用来获取服务器上的数据,不会改变服务器状态;
  • 而删除、修改这类会改变数据的操作,必须用POST或DELETE这类非GET请求,这既是安全层面的要求(防止恶意GET请求触发删除),也是行业通用的API设计标准。

怎么解决?

你不需要在2sxc里做任何额外配置,只需要调整请求方法就行:

  • 如果是前端代码调用(比如jQuery、原生JS),把请求方法从GET改成POST或者DELETE。举个例子,把$.get("/api/2sxc/cms/list/delete?index=5&parent=&fields=")换成$.post("/api/2sxc/cms/list/delete", {index:5, parent:"", fields:""}),或者用DELETE方法的AJAX请求。
  • 如果你是用Postman这类工具测试,直接把请求方法从GET切换到POST/DELETE,再带上对应的参数即可。

额外排查点(以防后续遇到其他问题)

  • 确保当前登录用户有足够的权限:需要拥有DNN的编辑权限,以及2sxc对应内容的管理权限(不过权限不足会返回403,不是405,所以优先级低于请求方法调整);
  • 调用接口时记得携带X-Dnn-Editors-Xsrf-Token请求头,这是2sxc用来防止CSRF攻击的令牌,缺少它可能会导致请求被拒绝(同样,这不会引发405,但改完请求方法后需要注意)。

内容的提问来源于stack exchange,提问作者MBouwman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 18:22:43