Files
full/wiki/api/13-feed.md

10 KiB
Raw Blame History

FEED API

动态发布、标签、时间线和动态设置。

本文档由 protobuf descriptor 生成。字段名采用 protobuf JSON 名称64 位整数在 JSON 中应按字符串处理。

接入方式

  • 动态 HTTPPOST /rpc/feed/{Service}/{Method}
  • 原生 gRPC/feed.{Service}/{Method}
  • grpc-gatewayPOST /feed.{Service}/{Method}
  • 鉴权:需要登录的接口通过 Authorization: Bearer <token> 传递凭证。
  • 动态 HTTP 成功或失败均返回 HTTP 200业务状态见 codemessagedetails

服务概览

服务 方法数 说明
Post 8 Post 服务
Setting 2 Setting 服务
Tag 3 Tag 服务
Timeline 4 Timeline 服务

Post

方法 动态 HTTP 路径 请求 响应 类型
Fetch POST /rpc/feed/Post/Fetch blocks.FetchRequest blocks.FeedPostListReply Unary
Create POST /rpc/feed/Post/Create blocks.FeedPostItem blocks.DataStatusReply Unary
Change POST /rpc/feed/Post/Change blocks.FeedPostItem blocks.DataStatusReply Unary
Remove POST /rpc/feed/Post/Remove blocks.IdentRequest blocks.DataStatusReply Unary
CommentList POST /rpc/feed/Post/CommentList blocks.FetchRequest feed.CommentListReply Unary
AddComment POST /rpc/feed/Post/AddComment feed.CommentItem blocks.DataStatusReply Unary
DeleteComment POST /rpc/feed/Post/DeleteComment blocks.IdentRequest blocks.DataStatusReply Unary
Action POST /rpc/feed/Post/Action feed.PostActionRequest blocks.DataStatusReply Unary

Post.Fetch

  • 动态 HTTPPOST /rpc/feed/Post/Fetch
  • gRPC/feed.Post/Fetch
  • 白名单键:feed.Post.Fetch
  • 请求示例:
{
  "page_no": "0",
  "page_size": "0",
  "params": {
    "key": "string"
  }
}

Post.Create

  • 动态 HTTPPOST /rpc/feed/Post/Create
  • gRPC/feed.Post/Create
  • 白名单键:feed.Post.Create
  • 请求示例:
{
  "attachs": [
    {
      "attachType": "string",
      "identity": "string",
      "url": "string"
    }
  ],
  "cntComment": "0",
  "cntLike": "0",
  "cntUnlike": "0",
  "content": "string",
  "feedId": "0",
  "feedIdentity": "string",
  "identity": "string",
  "isOpen": false,
  "tags": [
    {
      "content": "string",
      "key": "string"
    }
  ]
}

Post.Change

  • 动态 HTTPPOST /rpc/feed/Post/Change
  • gRPC/feed.Post/Change
  • 白名单键:feed.Post.Change
  • 请求示例:
{
  "attachs": [
    {
      "attachType": "string",
      "identity": "string",
      "url": "string"
    }
  ],
  "cntComment": "0",
  "cntLike": "0",
  "cntUnlike": "0",
  "content": "string",
  "feedId": "0",
  "feedIdentity": "string",
  "identity": "string",
  "isOpen": false,
  "tags": [
    {
      "content": "string",
      "key": "string"
    }
  ]
}

Post.Remove

  • 动态 HTTPPOST /rpc/feed/Post/Remove
  • gRPC/feed.Post/Remove
  • 白名单键:feed.Post.Remove
  • 请求示例:
{
  "id": "0",
  "identity": "string"
}

Post.CommentList

  • 动态 HTTPPOST /rpc/feed/Post/CommentList
  • gRPC/feed.Post/CommentList
  • 白名单键:feed.Post.CommentList
  • 请求示例:
{
  "page_no": "0",
  "page_size": "0",
  "params": {
    "key": "string"
  }
}

Post.AddComment

  • 动态 HTTPPOST /rpc/feed/Post/AddComment
  • gRPC/feed.Post/AddComment
  • 白名单键:feed.Post.AddComment
  • 请求示例:
{
  "content": "string",
  "feedIdentity": "string",
  "identity": "string",
  "postIdentity": "string",
  "subComment": [
    {}
  ]
}

Post.DeleteComment

  • 动态 HTTPPOST /rpc/feed/Post/DeleteComment
  • gRPC/feed.Post/DeleteComment
  • 白名单键:feed.Post.DeleteComment
  • 请求示例:
{
  "id": "0",
  "identity": "string"
}

Post.Action

  • 动态 HTTPPOST /rpc/feed/Post/Action
  • gRPC/feed.Post/Action
  • 白名单键:feed.Post.Action
  • 请求示例:
{
  "actionOp": "string",
  "actionType": "string",
  "identity": "string"
}

Setting

方法 动态 HTTP 路径 请求 响应 类型
Info POST /rpc/feed/Setting/Info blocks.Empty blocks.Empty Unary
Rights POST /rpc/feed/Setting/Rights blocks.Empty blocks.Empty Unary

Setting.Info

  • 动态 HTTPPOST /rpc/feed/Setting/Info
  • gRPC/feed.Setting/Info
  • 白名单键:feed.Setting.Info
  • 请求示例:
{}

Setting.Rights

  • 动态 HTTPPOST /rpc/feed/Setting/Rights
  • gRPC/feed.Setting/Rights
  • 白名单键:feed.Setting.Rights
  • 请求示例:
{}

Tag

方法 动态 HTTP 路径 请求 响应 类型
List POST /rpc/feed/Tag/List blocks.FetchRequest feed.TagListReply Unary
Create POST /rpc/feed/Tag/Create feed.AddTagRequest blocks.DataStatusReply Unary
PostList POST /rpc/feed/Tag/PostList blocks.FetchRequest blocks.FeedPostListReply Unary

Tag.List

  • 动态 HTTPPOST /rpc/feed/Tag/List
  • gRPC/feed.Tag/List
  • 白名单键:feed.Tag.List
  • 请求示例:
{
  "page_no": "0",
  "page_size": "0",
  "params": {
    "key": "string"
  }
}

Tag.Create

  • 动态 HTTPPOST /rpc/feed/Tag/Create
  • gRPC/feed.Tag/Create
  • 白名单键:feed.Tag.Create
  • 请求示例:
{
  "tags": [
    "string"
  ]
}

Tag.PostList

  • 动态 HTTPPOST /rpc/feed/Tag/PostList
  • gRPC/feed.Tag/PostList
  • 白名单键:feed.Tag.PostList
  • 请求示例:
{
  "page_no": "0",
  "page_size": "0",
  "params": {
    "key": "string"
  }
}

Timeline

方法 动态 HTTP 路径 请求 响应 类型
Recommend POST /rpc/feed/Timeline/Recommend blocks.FetchRequest blocks.FeedPostListReply Unary
Friend POST /rpc/feed/Timeline/Friend blocks.FetchRequest blocks.FeedPostListReply Unary
Follow POST /rpc/feed/Timeline/Follow blocks.FetchRequest blocks.FeedPostListReply Unary
Hot POST /rpc/feed/Timeline/Hot blocks.FetchRequest blocks.FeedPostListReply Unary

Timeline.Recommend

  • 动态 HTTPPOST /rpc/feed/Timeline/Recommend
  • gRPC/feed.Timeline/Recommend
  • 白名单键:feed.Timeline.Recommend
  • 请求示例:
{
  "page_no": "0",
  "page_size": "0",
  "params": {
    "key": "string"
  }
}

Timeline.Friend

  • 动态 HTTPPOST /rpc/feed/Timeline/Friend
  • gRPC/feed.Timeline/Friend
  • 白名单键:feed.Timeline.Friend
  • 请求示例:
{
  "page_no": "0",
  "page_size": "0",
  "params": {
    "key": "string"
  }
}

Timeline.Follow

  • 动态 HTTPPOST /rpc/feed/Timeline/Follow
  • gRPC/feed.Timeline/Follow
  • 白名单键:feed.Timeline.Follow
  • 请求示例:
{
  "page_no": "0",
  "page_size": "0",
  "params": {
    "key": "string"
  }
}

Timeline.Hot

  • 动态 HTTPPOST /rpc/feed/Timeline/Hot
  • gRPC/feed.Timeline/Hot
  • 白名单键:feed.Timeline.Hot
  • 请求示例:
{
  "page_no": "0",
  "page_size": "0",
  "params": {
    "key": "string"
  }
}

消息结构

blocks.DataStatusReply

JSON 字段 类型 规则
data string 可选
timeseq int64 可选

blocks.Empty

空消息:请求时发送 {}

blocks.FeedAttachItem

JSON 字段 类型 规则
identity string 可选
attachType string 可选
url string 可选

blocks.FeedPostItem

JSON 字段 类型 规则
identity string 可选
content string 可选
feedId int64 可选
feedIdentity string 可选
isOpen bool 可选
cntUnlike int64 可选
cntComment int64 可选
cntLike int64 可选
attachs []blocks.FeedAttachItem 数组
tags []blocks.FeedTagItem 数组

blocks.FeedPostListReply

JSON 字段 类型 规则
list []blocks.FeedPostItem 数组
cnt int64 可选

blocks.FeedTagItem

JSON 字段 类型 规则
key string 可选
content string 可选

blocks.FetchRequest

JSON 字段 类型 规则
page_no int64 可选
page_size int64 可选
params map<string, string> 对象映射

blocks.FetchRequest.ParamsEntry

JSON 字段 类型 规则
key string 可选
value string 可选

blocks.IdentRequest

JSON 字段 类型 规则
id int64 可选
identity string 可选

feed.AddTagRequest

JSON 字段 类型 规则
tags []string 数组

feed.CommentItem

JSON 字段 类型 规则
identity string 可选
postIdentity string 可选
feedIdentity string 可选
content string 可选
subComment []feed.CommentItem 数组

feed.CommentListReply

JSON 字段 类型 规则
list []feed.CommentItem 数组
total int64 可选

feed.PostActionRequest

JSON 字段 类型 规则
actionOp string 可选
actionType string 可选
identity string 可选

feed.TagListReply

JSON 字段 类型 规则
tags []blocks.FeedTagItem 数组
total int64 可选