# CMS API 站点、页面、文章、栏目和标签内容管理。 > 本文档由 protobuf descriptor 生成。字段名采用 protobuf JSON 名称;64 位整数在 JSON 中应按字符串处理。 ## 接入方式 - 动态 HTTP:`POST /rpc/cms/{Service}/{Method}` - 原生 gRPC:`/cms.{Service}/{Method}` - grpc-gateway:`POST /cms.{Service}/{Method}` - 鉴权:需要登录的接口通过 `Authorization: ` 传递裸 JWT,不添加 `Bearer` 前缀。 - 动态 HTTP 成功或失败均返回 HTTP 200,业务状态见 `code`、`message`、`details`。 ## 服务概览 | 服务 | 方法数 | 说明 | |---|---:|---| | `Category` | 4 | Category 服务 | | `Pages` | 6 | Pages 服务 | | `Post` | 19 | Post 服务 | | `Site` | 5 | Site 服务 | | `Tags` | 4 | Tags 服务 | ## Category | 方法 | 动态 HTTP 路径 | 请求 | 响应 | 类型 | |---|---|---|---|---| | `Fetch` | `POST /rpc/cms/Category/Fetch` | [`base_cms_blocks.IdentRequest`](#base_cms_blocksidentrequest) | [`cms.CategoryListReply`](#cmscategorylistreply) | Unary | | `Create` | `POST /rpc/cms/Category/Create` | [`base_cms_blocks.CmsCategoryItem`](#base_cms_blockscmscategoryitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Modify` | `POST /rpc/cms/Category/Modify` | [`cms.ModifyCategoryRequest`](#cmsmodifycategoryrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Delete` | `POST /rpc/cms/Category/Delete` | [`cms.DeleteCategoryRequest`](#cmsdeletecategoryrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | ### Category.Fetch - 动态 HTTP:`POST /rpc/cms/Category/Fetch` - gRPC:`/cms.Category/Fetch` - 请求示例: ```json { "id": "0", "identity": "string" } ``` ### Category.Create - 动态 HTTP:`POST /rpc/cms/Category/Create` - gRPC:`/cms.Category/Create` - 请求示例: ```json { "category_key": "string", "child": [ {} ], "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "parent_id": "0", "site_identity": "string", "title": "string", "updated_at": "string" } ``` ### Category.Modify - 动态 HTTP:`POST /rpc/cms/Category/Modify` - gRPC:`/cms.Category/Modify` - 请求示例: ```json { "category_key": "string", "cover_path": "string", "created_at": "string", "data": [ { "category_key": "string", "child": [ {} ], "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "parent_id": "0", "site_identity": "string", "title": "string", "updated_at": "string" } ], "identity": "string", "intro": "string", "parent_id": "0", "site_identity": "string", "title": "string", "updated_at": "string" } ``` ### Category.Delete - 动态 HTTP:`POST /rpc/cms/Category/Delete` - gRPC:`/cms.Category/Delete` - 请求示例: ```json { "identity": "string" } ``` ## Pages | 方法 | 动态 HTTP 路径 | 请求 | 响应 | 类型 | |---|---|---|---|---| | `Fetch` | `POST /rpc/cms/Pages/Fetch` | [`cms.PagesListRequest`](#cmspageslistrequest) | [`cms.PagesListReply`](#cmspageslistreply) | Unary | | `GetByIdentity` | `POST /rpc/cms/Pages/GetByIdentity` | [`cms.GetPagesRequest`](#cmsgetpagesrequest) | [`cms.PagesItem`](#cmspagesitem) | Unary | | `GetByKey` | `POST /rpc/cms/Pages/GetByKey` | [`cms.GetPagesByKeyRequest`](#cmsgetpagesbykeyrequest) | [`cms.PagesItem`](#cmspagesitem) | Unary | | `Create` | `POST /rpc/cms/Pages/Create` | [`cms.PagesItem`](#cmspagesitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Modify` | `POST /rpc/cms/Pages/Modify` | [`cms.PagesItem`](#cmspagesitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Delete` | `POST /rpc/cms/Pages/Delete` | [`base_cms_blocks.IdentRequest`](#base_cms_blocksidentrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | ### Pages.Fetch - 动态 HTTP:`POST /rpc/cms/Pages/Fetch` - gRPC:`/cms.Pages/Fetch` - 请求示例: ```json { "keyword": "string", "page": "0", "size": "0", "type": 0 } ``` ### Pages.GetByIdentity - 动态 HTTP:`POST /rpc/cms/Pages/GetByIdentity` - gRPC:`/cms.Pages/GetByIdentity` - 请求示例: ```json { "identity": "string" } ``` ### Pages.GetByKey - 动态 HTTP:`POST /rpc/cms/Pages/GetByKey` - gRPC:`/cms.Pages/GetByKey` - 请求示例: ```json { "key": "string" } ``` ### Pages.Create - 动态 HTTP:`POST /rpc/cms/Pages/Create` - gRPC:`/cms.Pages/Create` - 请求示例: ```json { "accessory_data": [ { "created_at": "string", "file_path": "string", "identity": "string", "title": "string" } ], "accessory_identity_array": [ "string" ], "content": "string", "cover_path": "string", "created_at": "string", "description": "string", "has_accessory": false, "hits": "0", "identity": "string", "key": "string", "post_type": 0, "rights": "string", "site_identity": "string", "tags_data": [ { "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "title": "string" } ], "tags_identity_array": [ "string" ], "title": "string", "updated_at": "string" } ``` ### Pages.Modify - 动态 HTTP:`POST /rpc/cms/Pages/Modify` - gRPC:`/cms.Pages/Modify` - 请求示例: ```json { "accessory_data": [ { "created_at": "string", "file_path": "string", "identity": "string", "title": "string" } ], "accessory_identity_array": [ "string" ], "content": "string", "cover_path": "string", "created_at": "string", "description": "string", "has_accessory": false, "hits": "0", "identity": "string", "key": "string", "post_type": 0, "rights": "string", "site_identity": "string", "tags_data": [ { "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "title": "string" } ], "tags_identity_array": [ "string" ], "title": "string", "updated_at": "string" } ``` ### Pages.Delete - 动态 HTTP:`POST /rpc/cms/Pages/Delete` - gRPC:`/cms.Pages/Delete` - 请求示例: ```json { "id": "0", "identity": "string" } ``` ## Post | 方法 | 动态 HTTP 路径 | 请求 | 响应 | 类型 | |---|---|---|---|---| | `Fetch` | `POST /rpc/cms/Post/Fetch` | [`cms.PostListRequest`](#cmspostlistrequest) | [`cms.PostListReply`](#cmspostlistreply) | Unary | | `GetByIdentity` | `POST /rpc/cms/Post/GetByIdentity` | [`cms.GetPostRequest`](#cmsgetpostrequest) | [`cms.PostItem`](#cmspostitem) | Unary | | `GetByKey` | `POST /rpc/cms/Post/GetByKey` | [`cms.GetPostByKeyRequest`](#cmsgetpostbykeyrequest) | [`cms.PostItem`](#cmspostitem) | Unary | | `Search` | `POST /rpc/cms/Post/Search` | [`base_cms_blocks.CmsSearchRequest`](#base_cms_blockscmssearchrequest) | [`cms.PostListReply`](#cmspostlistreply) | Unary | | `Create` | `POST /rpc/cms/Post/Create` | [`cms.PostItem`](#cmspostitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Modify` | `POST /rpc/cms/Post/Modify` | [`cms.PostItem`](#cmspostitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Delete` | `POST /rpc/cms/Post/Delete` | [`base_cms_blocks.IdentRequest`](#base_cms_blocksidentrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `IncrPostLike` | `POST /rpc/cms/Post/IncrPostLike` | [`cms.PostOpIdentityRequest`](#cmspostopidentityrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `DescPostLike` | `POST /rpc/cms/Post/DescPostLike` | [`cms.PostOpIdentityRequest`](#cmspostopidentityrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `IncrPostUnlike` | `POST /rpc/cms/Post/IncrPostUnlike` | [`cms.PostOpIdentityRequest`](#cmspostopidentityrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `DescPostUnlike` | `POST /rpc/cms/Post/DescPostUnlike` | [`cms.PostOpIdentityRequest`](#cmspostopidentityrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `CommentList` | `POST /rpc/cms/Post/CommentList` | [`cms.CommentListRequest`](#cmscommentlistrequest) | [`cms.CommentListResponse`](#cmscommentlistresponse) | Unary | | `AddComment` | `POST /rpc/cms/Post/AddComment` | [`cms.CommentItem`](#cmscommentitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `ModifyComment` | `POST /rpc/cms/Post/ModifyComment` | [`cms.CommentItem`](#cmscommentitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `DeleteComment` | `POST /rpc/cms/Post/DeleteComment` | [`cms.DeleteCommentRequest`](#cmsdeletecommentrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `IncrCommentLike` | `POST /rpc/cms/Post/IncrCommentLike` | [`cms.CommentOpIdentityRequest`](#cmscommentopidentityrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `DescCommentLike` | `POST /rpc/cms/Post/DescCommentLike` | [`cms.CommentOpIdentityRequest`](#cmscommentopidentityrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `IncrCommentUnlike` | `POST /rpc/cms/Post/IncrCommentUnlike` | [`cms.CommentOpIdentityRequest`](#cmscommentopidentityrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `DescCommentUnlike` | `POST /rpc/cms/Post/DescCommentUnlike` | [`cms.CommentOpIdentityRequest`](#cmscommentopidentityrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | ### Post.Fetch - 动态 HTTP:`POST /rpc/cms/Post/Fetch` - gRPC:`/cms.Post/Fetch` - 请求示例: ```json { "author_identity": "string", "category_identity": "string", "keyword": "string", "page": "0", "size": "0", "type": 0 } ``` ### Post.GetByIdentity - 动态 HTTP:`POST /rpc/cms/Post/GetByIdentity` - gRPC:`/cms.Post/GetByIdentity` - 请求示例: ```json { "author_identity": "string", "identity": "string" } ``` ### Post.GetByKey - 动态 HTTP:`POST /rpc/cms/Post/GetByKey` - gRPC:`/cms.Post/GetByKey` - 请求示例: ```json { "key": "string" } ``` ### Post.Search - 动态 HTTP:`POST /rpc/cms/Post/Search` - gRPC:`/cms.Post/Search` - 请求示例: ```json { "keyword": "string", "page_no": "0", "page_size": "0" } ``` ### Post.Create - 动态 HTTP:`POST /rpc/cms/Post/Create` - gRPC:`/cms.Post/Create` - 请求示例: ```json { "accessory_data": [ { "created_at": "string", "file_path": "string", "identity": "string", "title": "string" } ], "accessory_identity_array": [ "string" ], "author": "string", "author_identity": "string", "category_data": [ { "category_key": "string", "child": [ {} ], "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "parent_id": "0", "site_identity": "string", "title": "string", "updated_at": "string" } ], "category_identity_array": [ "string" ], "comment_hits": "0", "content": "string", "cover_path": "string", "created_at": "string", "description": "string", "extend_data": "string", "extend_desc": "string", "extend_img": "string", "extend_url": "string", "has_accessory": false, "hash": "string", "hits": "0", "identity": "string", "key": "string", "lang": "string", "like_hits": "0", "owner_id": "0", "owner_identity": "string", "post_type": 0, "published": "string", "rights": "string", "site_identity": "string", "source_origin": "string", "source_url": "string", "tags_data": [ { "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "title": "string" } ], "tags_identity_array": [ "string" ], "target_url": "string", "title": "string", "unlike_hits": "0", "updated_at": "string" } ``` ### Post.Modify - 动态 HTTP:`POST /rpc/cms/Post/Modify` - gRPC:`/cms.Post/Modify` - 请求示例: ```json { "accessory_data": [ { "created_at": "string", "file_path": "string", "identity": "string", "title": "string" } ], "accessory_identity_array": [ "string" ], "author": "string", "author_identity": "string", "category_data": [ { "category_key": "string", "child": [ {} ], "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "parent_id": "0", "site_identity": "string", "title": "string", "updated_at": "string" } ], "category_identity_array": [ "string" ], "comment_hits": "0", "content": "string", "cover_path": "string", "created_at": "string", "description": "string", "extend_data": "string", "extend_desc": "string", "extend_img": "string", "extend_url": "string", "has_accessory": false, "hash": "string", "hits": "0", "identity": "string", "key": "string", "lang": "string", "like_hits": "0", "owner_id": "0", "owner_identity": "string", "post_type": 0, "published": "string", "rights": "string", "site_identity": "string", "source_origin": "string", "source_url": "string", "tags_data": [ { "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "title": "string" } ], "tags_identity_array": [ "string" ], "target_url": "string", "title": "string", "unlike_hits": "0", "updated_at": "string" } ``` ### Post.Delete - 动态 HTTP:`POST /rpc/cms/Post/Delete` - gRPC:`/cms.Post/Delete` - 请求示例: ```json { "id": "0", "identity": "string" } ``` ### Post.IncrPostLike - 动态 HTTP:`POST /rpc/cms/Post/IncrPostLike` - gRPC:`/cms.Post/IncrPostLike` - 请求示例: ```json { "op_identity": "string", "post_identity": "string" } ``` ### Post.DescPostLike - 动态 HTTP:`POST /rpc/cms/Post/DescPostLike` - gRPC:`/cms.Post/DescPostLike` - 请求示例: ```json { "op_identity": "string", "post_identity": "string" } ``` ### Post.IncrPostUnlike - 动态 HTTP:`POST /rpc/cms/Post/IncrPostUnlike` - gRPC:`/cms.Post/IncrPostUnlike` - 请求示例: ```json { "op_identity": "string", "post_identity": "string" } ``` ### Post.DescPostUnlike - 动态 HTTP:`POST /rpc/cms/Post/DescPostUnlike` - gRPC:`/cms.Post/DescPostUnlike` - 请求示例: ```json { "op_identity": "string", "post_identity": "string" } ``` ### Post.CommentList - 动态 HTTP:`POST /rpc/cms/Post/CommentList` - gRPC:`/cms.Post/CommentList` - 请求示例: ```json { "page": "0", "post_identity": "string", "size": "0" } ``` ### Post.AddComment - 动态 HTTP:`POST /rpc/cms/Post/AddComment` - gRPC:`/cms.Post/AddComment` - 请求示例: ```json { "Cms": "string", "comment_hits": "0", "created_at": "string", "identity": "string", "like_hits": "0", "list": [ {} ], "owner_identity": "string", "owner_name": "string", "parent_id": "0", "post_identity": "string", "reply_identity": "string", "role": "string", "unlike_hits": "0", "updated_at": "string" } ``` ### Post.ModifyComment - 动态 HTTP:`POST /rpc/cms/Post/ModifyComment` - gRPC:`/cms.Post/ModifyComment` - 请求示例: ```json { "Cms": "string", "comment_hits": "0", "created_at": "string", "identity": "string", "like_hits": "0", "list": [ {} ], "owner_identity": "string", "owner_name": "string", "parent_id": "0", "post_identity": "string", "reply_identity": "string", "role": "string", "unlike_hits": "0", "updated_at": "string" } ``` ### Post.DeleteComment - 动态 HTTP:`POST /rpc/cms/Post/DeleteComment` - gRPC:`/cms.Post/DeleteComment` - 请求示例: ```json { "identity": "string", "post_identity": "string" } ``` ### Post.IncrCommentLike - 动态 HTTP:`POST /rpc/cms/Post/IncrCommentLike` - gRPC:`/cms.Post/IncrCommentLike` - 请求示例: ```json { "comment_identity": "string", "op_identity": "string" } ``` ### Post.DescCommentLike - 动态 HTTP:`POST /rpc/cms/Post/DescCommentLike` - gRPC:`/cms.Post/DescCommentLike` - 请求示例: ```json { "comment_identity": "string", "op_identity": "string" } ``` ### Post.IncrCommentUnlike - 动态 HTTP:`POST /rpc/cms/Post/IncrCommentUnlike` - gRPC:`/cms.Post/IncrCommentUnlike` - 请求示例: ```json { "comment_identity": "string", "op_identity": "string" } ``` ### Post.DescCommentUnlike - 动态 HTTP:`POST /rpc/cms/Post/DescCommentUnlike` - gRPC:`/cms.Post/DescCommentUnlike` - 请求示例: ```json { "comment_identity": "string", "op_identity": "string" } ``` ## Site | 方法 | 动态 HTTP 路径 | 请求 | 响应 | 类型 | |---|---|---|---|---| | `Fetch` | `POST /rpc/cms/Site/Fetch` | [`base_cms_blocks.Empty`](#base_cms_blocksempty) | [`cms.SiteListReply`](#cmssitelistreply) | Unary | | `Get` | `POST /rpc/cms/Site/Get` | [`base_cms_blocks.IdentRequest`](#base_cms_blocksidentrequest) | [`cms.SiteItem`](#cmssiteitem) | Unary | | `Create` | `POST /rpc/cms/Site/Create` | [`cms.SiteItem`](#cmssiteitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Modify` | `POST /rpc/cms/Site/Modify` | [`cms.SiteItem`](#cmssiteitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Delete` | `POST /rpc/cms/Site/Delete` | [`base_cms_blocks.IdentRequest`](#base_cms_blocksidentrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | ### Site.Fetch - 动态 HTTP:`POST /rpc/cms/Site/Fetch` - gRPC:`/cms.Site/Fetch` - 请求示例: ```json {} ``` ### Site.Get - 动态 HTTP:`POST /rpc/cms/Site/Get` - gRPC:`/cms.Site/Get` - 请求示例: ```json { "id": "0", "identity": "string" } ``` ### Site.Create - 动态 HTTP:`POST /rpc/cms/Site/Create` - gRPC:`/cms.Site/Create` - 请求示例: ```json { "configs": "string", "description": "string", "domain": "string", "icon_path": "string", "id": "0", "identity": "string", "keywords": "string", "seo": "string", "theme": "string", "title": "string" } ``` ### Site.Modify - 动态 HTTP:`POST /rpc/cms/Site/Modify` - gRPC:`/cms.Site/Modify` - 请求示例: ```json { "configs": "string", "description": "string", "domain": "string", "icon_path": "string", "id": "0", "identity": "string", "keywords": "string", "seo": "string", "theme": "string", "title": "string" } ``` ### Site.Delete - 动态 HTTP:`POST /rpc/cms/Site/Delete` - gRPC:`/cms.Site/Delete` - 请求示例: ```json { "id": "0", "identity": "string" } ``` ## Tags | 方法 | 动态 HTTP 路径 | 请求 | 响应 | 类型 | |---|---|---|---|---| | `Fetch` | `POST /rpc/cms/Tags/Fetch` | [`base_cms_blocks.IdentRequest`](#base_cms_blocksidentrequest) | [`cms.TagsListReply`](#cmstagslistreply) | Unary | | `Create` | `POST /rpc/cms/Tags/Create` | [`base_cms_blocks.CmsTagsItem`](#base_cms_blockscmstagsitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Modify` | `POST /rpc/cms/Tags/Modify` | [`base_cms_blocks.CmsTagsItem`](#base_cms_blockscmstagsitem) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | | `Delete` | `POST /rpc/cms/Tags/Delete` | [`base_cms_blocks.IdentRequest`](#base_cms_blocksidentrequest) | [`base_cms_blocks.StatusReply`](#base_cms_blocksstatusreply) | Unary | ### Tags.Fetch - 动态 HTTP:`POST /rpc/cms/Tags/Fetch` - gRPC:`/cms.Tags/Fetch` - 请求示例: ```json { "id": "0", "identity": "string" } ``` ### Tags.Create - 动态 HTTP:`POST /rpc/cms/Tags/Create` - gRPC:`/cms.Tags/Create` - 请求示例: ```json { "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "title": "string" } ``` ### Tags.Modify - 动态 HTTP:`POST /rpc/cms/Tags/Modify` - gRPC:`/cms.Tags/Modify` - 请求示例: ```json { "cover_path": "string", "created_at": "string", "id": "0", "identity": "string", "intro": "string", "title": "string" } ``` ### Tags.Delete - 动态 HTTP:`POST /rpc/cms/Tags/Delete` - gRPC:`/cms.Tags/Delete` - 请求示例: ```json { "id": "0", "identity": "string" } ``` ## 消息结构 ### base_cms_blocks.CmsAccessoryItem | JSON 字段 | 类型 | 规则 | |---|---|---| | `identity` | `string` | 可选 | | `title` | `string` | 可选 | | `file_path` | `string` | 可选 | | `created_at` | `string` | 可选 | ### base_cms_blocks.CmsCategoryItem | JSON 字段 | 类型 | 规则 | |---|---|---| | `site_identity` | `string` | 可选 | | `id` | `int64` | 可选 | | `identity` | `string` | 可选 | | `parent_id` | `int64` | 可选 | | `title` | `string` | 可选 | | `cover_path` | `string` | 可选 | | `intro` | `string` | 可选 | | `created_at` | `string` | 可选 | | `updated_at` | `string` | 可选 | | `child` | `[]base_cms_blocks.CmsCategoryItem` | 数组 | | `category_key` | `string` | 可选 | ### base_cms_blocks.CmsSearchRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `keyword` | `string` | 可选 | | `page_no` | `int64` | 可选 | | `page_size` | `int64` | 可选 | ### base_cms_blocks.CmsTagsItem | JSON 字段 | 类型 | 规则 | |---|---|---| | `id` | `int64` | 可选 | | `identity` | `string` | 可选 | | `title` | `string` | 可选 | | `cover_path` | `string` | 可选 | | `intro` | `string` | 可选 | | `created_at` | `string` | 可选 | ### base_cms_blocks.Empty 空消息:请求时发送 `{}`。 ### base_cms_blocks.IdentRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `id` | `int64` | 可选 | | `identity` | `string` | 可选 | ### base_cms_blocks.StatusReply | JSON 字段 | 类型 | 规则 | |---|---|---| | `code` | `int32` | 可选 | | `message` | `string` | 可选 | | `details` | `string` | 可选 | | `timeseq` | `int64` | 可选 | ### cms.CategoryListReply | JSON 字段 | 类型 | 规则 | |---|---|---| | `data` | `[]base_cms_blocks.CmsCategoryItem` | 数组 | | `count` | `int64` | 可选 | ### cms.CommentItem | JSON 字段 | 类型 | 规则 | |---|---|---| | `identity` | `string` | 可选 | | `post_identity` | `string` | 可选 | | `parent_id` | `int64` | 可选 | | `Cms` | `string` | 可选 | | `reply_identity` | `string` | 可选 | | `created_at` | `string` | 可选 | | `updated_at` | `string` | 可选 | | `list` | `[]cms.CommentItem` | 数组 | | `like_hits` | `int64` | 可选 | | `unlike_hits` | `int64` | 可选 | | `comment_hits` | `int64` | 可选 | | `owner_name` | `string` | 可选 | | `owner_identity` | `string` | 可选 | | `role` | `string` | 可选 | ### cms.CommentListRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `post_identity` | `string` | 可选 | | `page` | `int64` | 可选 | | `size` | `int64` | 可选 | ### cms.CommentListResponse | JSON 字段 | 类型 | 规则 | |---|---|---| | `list` | `[]cms.CommentItem` | 数组 | | `count` | `int64` | 可选 | ### cms.CommentOpIdentityRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `comment_identity` | `string` | 可选 | | `op_identity` | `string` | 可选 | ### cms.DeleteCategoryRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `identity` | `string` | 可选 | ### cms.DeleteCommentRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `identity` | `string` | 可选 | | `post_identity` | `string` | 可选 | ### cms.GetPagesByKeyRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `key` | `string` | 可选 | ### cms.GetPagesRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `identity` | `string` | 可选 | ### cms.GetPostByKeyRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `key` | `string` | 可选 | ### cms.GetPostRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `identity` | `string` | 可选 | | `author_identity` | `string` | 可选 | ### cms.ModifyCategoryRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `site_identity` | `string` | 可选 | | `identity` | `string` | 可选 | | `parent_id` | `int64` | 可选 | | `title` | `string` | 可选 | | `cover_path` | `string` | 可选 | | `intro` | `string` | 可选 | | `created_at` | `string` | 可选 | | `updated_at` | `string` | 可选 | | `data` | `[]base_cms_blocks.CmsCategoryItem` | 数组 | | `category_key` | `string` | 可选 | ### cms.PagesItem | JSON 字段 | 类型 | 规则 | |---|---|---| | `site_identity` | `string` | 可选 | | `identity` | `string` | 可选 | | `created_at` | `string` | 可选 | | `updated_at` | `string` | 可选 | | `post_type` | `int32` | 可选 | | `rights` | `string` | 可选 | | `title` | `string` | 可选 | | `key` | `string` | 可选 | | `description` | `string` | 可选 | | `cover_path` | `string` | 可选 | | `content` | `string` | 可选 | | `has_accessory` | `bool` | 可选 | | `accessory_identity_array` | `[]string` | 数组 | | `accessory_data` | `[]base_cms_blocks.CmsAccessoryItem` | 数组 | | `tags_data` | `[]base_cms_blocks.CmsTagsItem` | 数组 | | `tags_identity_array` | `[]string` | 数组 | | `hits` | `int64` | 可选 | ### cms.PagesListReply | JSON 字段 | 类型 | 规则 | |---|---|---| | `data` | `[]cms.PagesItem` | 数组 | | `count` | `int64` | 可选 | ### cms.PagesListRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `page` | `int64` | 可选 | | `size` | `int64` | 可选 | | `keyword` | `string` | 可选 | | `type` | `int32` | 可选 | ### cms.PostItem | JSON 字段 | 类型 | 规则 | |---|---|---| | `site_identity` | `string` | 可选 | | `identity` | `string` | 可选 | | `owner_id` | `int64` | 可选 | | `owner_identity` | `string` | 可选 | | `category_identity_array` | `[]string` | 数组 | | `tags_identity_array` | `[]string` | 数组 | | `title` | `string` | 可选 | | `cover_path` | `string` | 可选 | | `author` | `string` | 可选 | | `author_identity` | `string` | 可选 | | `content` | `string` | 可选 | | `target_url` | `string` | 可选 | | `source_url` | `string` | 可选 | | `hits` | `int64` | 可选 | | `accessory_identity_array` | `[]string` | 数组 | | `has_accessory` | `bool` | 可选 | | `created_at` | `string` | 可选 | | `updated_at` | `string` | 可选 | | `description` | `string` | 可选 | | `like_hits` | `int64` | 可选 | | `unlike_hits` | `int64` | 可选 | | `comment_hits` | `int64` | 可选 | | `post_type` | `int32` | 可选 | | `rights` | `string` | 可选 | | `key` | `string` | 可选 | | `category_data` | `[]base_cms_blocks.CmsCategoryItem` | 数组 | | `tags_data` | `[]base_cms_blocks.CmsTagsItem` | 数组 | | `accessory_data` | `[]base_cms_blocks.CmsAccessoryItem` | 数组 | | `lang` | `string` | 可选 | | `source_origin` | `string` | 可选 | | `extend_url` | `string` | 可选 | | `extend_data` | `string` | 可选 | | `extend_img` | `string` | 可选 | | `extend_desc` | `string` | 可选 | | `published` | `string` | 可选 | | `hash` | `string` | 可选 | ### cms.PostListReply | JSON 字段 | 类型 | 规则 | |---|---|---| | `data` | `[]cms.PostItem` | 数组 | | `count` | `int64` | 可选 | ### cms.PostListRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `page` | `int64` | 可选 | | `size` | `int64` | 可选 | | `author_identity` | `string` | 可选 | | `category_identity` | `string` | 可选 | | `keyword` | `string` | 可选 | | `type` | `int32` | 可选 | ### cms.PostOpIdentityRequest | JSON 字段 | 类型 | 规则 | |---|---|---| | `post_identity` | `string` | 可选 | | `op_identity` | `string` | 可选 | ### cms.SiteItem | JSON 字段 | 类型 | 规则 | |---|---|---| | `id` | `int64` | 可选 | | `identity` | `string` | 可选 | | `title` | `string` | 可选 | | `description` | `string` | 可选 | | `icon_path` | `string` | 可选 | | `keywords` | `string` | 可选 | | `domain` | `string` | 可选 | | `seo` | `string` | 可选 | | `theme` | `string` | 可选 | | `configs` | `string` | 可选 | ### cms.SiteListReply | JSON 字段 | 类型 | 规则 | |---|---|---| | `data` | `[]cms.SiteItem` | 数组 | | `count` | `int64` | 可选 | ### cms.TagsListReply | JSON 字段 | 类型 | 规则 | |---|---|---| | `data` | `[]base_cms_blocks.CmsTagsItem` | 数组 | | `count` | `int64` | 可选 |