关于 bitrix-rest
面向 Bitrix 模块开发者的 REST 服务端技能,介绍如何发布模块方法、选择注册方式及处理权限和错误。新 API 优先采用 REST 3.0,并涵盖经典方法映射与控制器方案。
主要功能
- 01发布模块 REST 方法
- 02注册 REST 3.0 接口
- 03配置 Engine 控制器
- 04定义经典方法映射
- 05在操作中检查用户权限
- 06按 REST 格式返回错误
适用场景
- 01为模块提供 REST API
- 02实现 REST 事件或 placements
- 03为应用设置稳定的权限范围
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ bxmaximum/ bitrix-framework-skills --skill bitrix-rest安装后在 Claude Code 中输入/bitrix-rest确认已加载。
附带文件rules/classic.mdrules/v3.md
详细介绍
REST 服务端(rest)
基线:main 23.0+ · 已验证:rest 26.650.0、main 26.800.0
发布模块中的方法。调用 REST(webhook、OAuth、批处理、限制、客户端错误处理):bitrix24-rest-api。
| 路径 | 注册方式 | 阅读 |
|---|---|---|
REST 3.0(/rest/api/…、DTO、JSON) | 模块 .settings.php → rest 部分 | rules/v3.md |
| Engine 控制器(与 AJAX 使用同一个类) | .settings.php → controllers.restIntegration.enabled | rules/classic.md |
| 经典方法映射、REST 事件、放置项 | 事件 rest:OnRestServiceBuildDescription | rules/classic.md |
对于新 API:REST 3.0(自 rest 26.200* 起),回退方案为 Engine 控制器 + restIntegration。经典描述用于 REST 事件、放置项或明确指定方法名的场景。
不变规则
- 使用
Loader::includeModule('rest');代码位于/local/modules/<vendor.module>/,且模块必须已安装。 - REST 调用没有 CSRF:身份验证依赖应用令牌/webhook。在每个操作中检查用户权限。
- 作用域是授予应用的权限单位。保持名称稳定并提供文档说明。
- 以 REST 格式返回错误(v3 异常、控制器
addError、\Bitrix\Rest\RestException),绝不要返回 HTML 或调用die()。 - 不要扩展
rest类或实现Bitrix\Rest\Internal\*契约:签名会在次要版本中变更(26.650:Engine\Access、Api\User、IncomingWebhookRepositoryInterface)。应改用组合方式。 - 通过 REST 使用 Landing 区块和放置项:
bitrix-landing。
评论
支持 Markdown