工作原理?
若要使用API创建帖子或回复帖子,您需要了解后端的工作方式。
帖子和对其的回复本质上是相同的,只是回复归属于某个帖子。至于其媒体结构和行为,与普通帖子相同。
无法通过一次发送文本和媒体文件来创建帖子,因为帖子是分步创建的。
创建媒体帖子(即图片/视频帖子,不包括GIF)时的系统工作原理说明
- 1. 首先上传媒体文件(视频/图片)
- 2. 然后使用下面描述的端点发布帖子或回复
创建GIF/文本帖子时的系统工作原理说明
- 1. 创建简单文本帖子或GIF图片时,我们可以通过一个请求发送所有内容,如下所示。
上传帖子媒体
请使用此 (https://mariago.site/mobile_api/upload_post_media) API端点上传帖子多媒体文件
POST参数
字段 | 值 | 说明 |
---|---|---|
session_id | 访问令牌ID | 例如: de25cc16eb00960f076... |
type | 媒体文件类型 (image/video) | 例如: image |
file | 媒体文件 (图片/视频) | 例如: some-selfy-picture.jpeg |
成功响应 (图片上传)
{
"message": "媒体文件上传成功",
"code": 200,
"data": {
"media_id": 4,
"url": "新上传媒体文件的绝对URL",
"type": "图片/视频"
}
}
成功响应 (视频上传)
{
"message": "媒体文件上传成功",
"code": 200,
"data": {
"media_id": 18,
"type": "视频",
"source": "新上传视频文件的绝对URL",
"poster": "自动生成的视频缩略图文件的绝对URL"
}
}
错误响应
{
"code": 401,
"data": [],
"message": "未授权访问"
}
{
"code": 500,
"message": "媒体文件缺失或无效",
"data": []
}
{
"code": 400,
"message": "媒体文件类型缺失或无效",
"data": []
}
{
"code": 400,
"message": "一个帖子不能附加超过10张图片",
"data": []
}
{
"code": 500,
"message": "处理您的请求时发生错误。请稍后再试。",
"data": []
}
删除帖子媒体
请使用此 (https://mariago.site/mobile_api/delete_post_media) API端点删除帖子多媒体文件
POST参数
字段 | 值 | 说明 |
---|---|---|
session_id | 访问令牌ID | 例如: de25cc16eb00960f076... |
type | 媒体文件类型 (Image/Video) | 例如: image |
media_id | 媒体文件ID | 例如: 45 |
成功响应
{
"code": 200,
"data": [],
"message": "媒体删除成功"
}
错误响应
{
"code": 401,
"data": [],
"message": "未授权访问"
}
{
"code": 400,
"message": "媒体文件类型缺失或无效",
"data": []
}
{
"code": 500,
"message": "处理您的请求时发生错误。请稍后再试。",
"data": []
}
发布帖子/回复
请使用此 (https://mariago.site/mobile_api/publish_post) API端点发布帖子或回复
POST参数
字段 | 值 | 说明 |
---|---|---|
session_id | 访问令牌ID | 例如: de25cc16eb00960f076... |
post_text | 帖子文本消息(最多600字符) | 例如: `Hello world!` |
thread_id | 主题ID | 仅回复时需要 |
gif_src | GIF图片源URL | 仅当帖子不包含其他媒体文件(视频或图片)时使用 |
og_data | 从URL提取的OG数据 | 仅当帖子不包含其他媒体文件(视频、图片或GIF)时使用 |
poll_data | 投票JSON数据 | 包含投票选项对象的JSON数组。例如: [{"value": "选项1"}, {"value": "选项2"}, {...}],2到4个选项 |
privacy | 帖子隐私设置(对帖子回复无效) | 以下值之一 (everyone, followers, mentioned) |
成功响应
{
"posts_total": 4048,
"data": {
"id": 13,
"user_id": 7,
"text": "video",
"type": "text",
"replys_count": "0",
"reposts_count": "0",
"likes_count": "0",
"status": "active",
"thread_id": 0,
"target": "publication",
"og_data": "",
"time": "刚刚",
"advertising": false,
"time_raw": "1605602544",
"og_text": "video",
"og_image": "statics/img/logo.png",
"url": "http://colibri.loc/thread/13",
"can_delete": true,
"media": [],
"is_owner": true,
"has_liked": false,
"has_saved": false,
"has_reposted": false,
"reply_to": {
"id": 7,
"url": "http://colibri.loc/@dan_kassing",
"avatar": "http://colibri.loc/upload/default/avatar.png",
"username": "@dan_kassing",
"name": "Dan Kassing",
"gender": "M",
"is_owner": true,
"thread_url": "http://colibri.loc/thread/36"
},
"offset_id": 13,
"owner":{
"id": 7,
"url": "http://colibri.loc/@dan_kassing",
"avatar": "http://colibri.loc/upload/default/avatar.png",
"username": "@dan_kassing",
"name": "Dan Kassing",
"verified": "2"
}
},
"code": 200,
"message": "帖子发布成功"
}
错误响应
{
"code": 401,
"data": [],
"message": "未授权访问"
}
{
"code": 400,
"message": "发布数据无效,请检查您的信息",
"data": []
}
更改帖子隐私设置
请使用此 (https://mariago.site/mobile_api/change_post_privacy) API端点更改帖子隐私设置
如果您想更改帖子的隐私设置,即“谁可以回复”选项,将需要使用此端点
但请注意,此选项仅适用于没有父级链的帖子。也就是说,该帖子应为原始帖子,而非回复。
POST参数
字段 | 值 | 说明 |
---|---|---|
session_id | 访问令牌ID | 例如: de25cc16eb00960f076... |
post_id | 帖子ID | 例如: 11 |
privacy | 帖子隐私设置(对帖子回复无效) |
以下值之一 (everyone, followers, mentioned)
|
成功响应
{
"code": 200,
"message": "帖子隐私设置更改成功",
"data": []
}
错误响应
{
"code": 401,
"data": [],
"message": "未授权访问"
}
{
"code": 400,
"message": "帖子ID缺失或无效,请检查您的信息",
"data": []
}