Have you thought about making your own app? Come on, here's your chance

I. Introduction

A few years ago, I developed an application "Duanzile", and it also reached a peak of around 7,000 daily active users at that time. However, due to the problem of funds (short videos are too expensive), I chose to stop the project at that time, until the users later Restart the project after it's gone. Although the project has undergone several major revisions, and it is now 3.0.0, there are only a dozen or so daily active users left.

At the suggestion of a friend, I decided to do a more meaningful thing, open the project interface and data to the outside world, so that friends who love tossing can use these interfaces to make their own applications, of course, including but not limited to developing an Android App, iOS App, Mini Program, H5 App, Flutter App, etc.

My personal homepage is: www.mxnzp.com , if you want to contact me, you can find my contact information here. If you want to connect to this interface, you will definitely encounter many problems, so you can contact me to join the group and discuss together.

2. Introduction to Interface Opening

"Duanzi Le" itself is an application similar to "xx Duanzi", which mainly includes the following functions:

  • Plain text, pictures and short video types of jokes
  • Like, comment, favorite and share the content of the paragraph
  • Achieving a swipe like Douyin to browse short video content
  • Publish plain text, pictures and short video clips
  • User attention, fan system
  • Message system, connected to Jiguang IM and push
  • Ledou system, point lottery, etc.
  • ...

In addition to some special functions including IM message related, third-party QQ WeChat login and one-click login, the interfaces corresponding to other functions are open, so in theory, you can completely implement another "Duanzile" of your own ( Note: You can connect IM and push by yourself, without letting the backend intervene).

Let’s first briefly show some main pages:

front page my page my page

To experience what "Duanzile" is, please click: www.pgyer.com/rmjK , and it can also give you a reference for page jumping. If you connect all the interfaces, you can roughly develop such an APP.

3. Before docking

对接接口之前,有些约定要提前告知。开放接口文档已托管到github,后续肯定会有很多新增和修改,将会同步在github上,而不会更新此文章,所以请提前收藏该地址,你甚至可以点个star:github.com/MZCretin/du…

3.1 请求接口的HOST地址

请求接口的HOST地址为:tools.cretinzp.com/jokes

3.2 获取开放API接口调用凭证

此项目对外开放只针对自己人,所以你需要是RollApi的用户,搜索微信小程序【Roll地盘】,点击我的页面,选择【做个段子应用】,可获取到一个专属的project_token(如果你之前没有绑定过手机号,需要先绑定手机号),获取到这个凭证之后,请妥善保管,并在每次调用任意开放api接口的时候,在请求头中加入一个key-value,key为project_token,value为你刚刚申请的值。

3.3 调用接口通用的请求头

在你调用的每个接口中,请包含如下请求头信息【必须,后台会强校验】:

请求头KEY 请求头VALUE 请求头含义
token 登录成功之后接口会返回token,你需要存储在本地,每次请求带上 用户凭证信息
uk 设备的唯一id,请尽量保证针对设备唯一,长度32以内 用户设备唯一标识
channel 请直接填写cretin_open_api 渠道来源
app 拼接版本号版本标识和系统版本,用;分开,例如 1.0.0;1;10,代表版本号1.0.0,版本标识1,系统为Android 10,其他也类似 app信息
device 拼接版本设备信息,设备品牌和设备型号,用;分开,例如HUAWEI;CDY-AN00 设备信息

3.4 接口返回数据的格式

接口返回的数据结构如下,后台能保证只要是请求到了后端,每个接口都会返回这种格式:

  • 其中code代表接口返回的状态码,当code=200,标识此接口请求成功,当code=202代表用户登录状态过期,也就代表你本地的token过期了,此时你需要清除本地的登录状态,让用户重新登录。
  • msg是当code不为200时候的错误信息,你可以将此信息提示给用户。
  • data是该请求的实体数据,具体返回什么格式取决于每个接口本身。
{
  "data": null,
  "msg": "数据返回成功",
  "code": 200
}
复制代码

3.5 其他的一些说明

  • 1、如何查看发送成功的验证码

    接口中有发验证码的接口,当然我没有真的给你的手机号发送一条验证码,否则我短信费也顶不住。当你调用接口发送成功之后,你可以进入【Roll地盘】小程序,然后点击《我的》,然后点击《做个段子应用》,然后点击《查看短信验证码》,就可以查看近期发送的所有验证码信息了;另外一种方式,你可以关注《Cretin的开发之路》公众号,然后输入#13即可查看对应手机号的验证码信息了。

  • 2、项目中发布功能用的图片和视频怎么处理

    项目中所用到的图片和视频资源均上传到七牛云上面,所以你需要集成七牛云的SDK,上传文件的时候,请调用相关接口获取到七牛云上传token:

    tools.cretinzp.com/jokes/doc.h…

    然后再进行上传文件。具体操作可参考链接(这个是Andorid的使用链接,其他端请自行查询):

    developer.qiniu.com/kodo/1236/a…

  • 3、接口中返回的视频和图片链接进行了加密,如何解密

    链接使用了简单的对称加密,请联系我或者加入交流群,我会告知大家加密方式和加密秘钥,解析完即可获取真实的视频链接。

  • 4、...

四、开放接口说明

接口文档已经上传,可直接查看在线接口文档,包含65个API接口。这里对每个页面需要的接口进行一个阐述,接口地址为:tools.cretinzp.com/jokes/doc.h…

4.1、首页类接口(7个)

4.1.1 主页-推荐

tools.cretinzp.com/jokes/doc.h…

4.1.2 主页-新鲜

tools.cretinzp.com/jokes/doc.h…

4.1.3 主页-纯文

tools.cretinzp.com/jokes/doc.h…

4.1.4 主页-趣图

tools.cretinzp.com/jokes/doc.h…

4.1.5 主页-关注

tools.cretinzp.com/jokes/doc.h…

4.1.6 主页-搜索

tools.cretinzp.com/jokes/doc.h…

4.1.7 主页-关注-推荐关注

tools.cretinzp.com/jokes/doc.h…

4.2、工具类接口(8个)

4.2.1 主页-搜索-热搜关键词

tools.cretinzp.com/jokes/doc.h…

4.2.2 获取分享段子的数据

点击任意段子的更多按钮,选择分享到平台前调用接口,获取分享数据

tools.cretinzp.com/jokes/doc.h…

4.2.3 获取分享用户的内容

点击【我的】,点击分享给朋友,在分享到平台前,调用此接口获取你的信息进行分享

tools.cretinzp.com/jokes/doc.h…

4.2.4 分享段子成功计数

段子分享成功之后调用此接口进行分享次数计数

tools.cretinzp.com/jokes/doc.h…

4.2.5 获取qq群信息

点击【我的】,点击我的客服,调用此接口获取qq群信息,打开qq群聊页面。

tools.cretinzp.com/jokes/doc.h…

4.2.6 获取七牛云token

在应用内上传头像,上传图片,上传视频等需要先获取七牛云的token,再使用sdk上传内容。

tools.cretinzp.com/jokes/doc.h…

4.2.7 举报内容

点击某一个段子的更多按钮,可以举报内容,或者点击某个用户头像,右上角也有举报的入口。

tools.cretinzp.com/jokes/doc.h…

4.2.8 意见反馈

点击【我的】,点击意见反馈

tools.cretinzp.com/jokes/doc.h…

4.3 段子相关接口(21个)

4.3.1.1 发布段子

发布段子之前,如果有视频和图片,需要先上传到七牛云,具体请看4.2.6条。

tools.cretinzp.com/jokes/doc.h…

4.3.1.2 删除段子

仅自己可以删除自己的段子。

tools.cretinzp.com/jokes/doc.h…

4.3.1.3 评论段子-一级评论

tools.cretinzp.com/jokes/doc.h…

4.3.1.4 删除一级评论

tools.cretinzp.com/jokes/doc.h…

4.3.1.5 添加子评论

tools.cretinzp.com/jokes/doc.h…

4.3.1.6 删除子评论

tools.cretinzp.com/jokes/doc.h…

4.3.1.7 给主评论点赞/取消点赞

tools.cretinzp.com/jokes/doc.h…

4.3.1.8 给段子点赞/取消点赞

tools.cretinzp.com/jokes/doc.h…

4.3.1.9 收藏/取消收藏 段子

tools.cretinzp.com/jokes/doc.h…

4.3.2.0 获取段子评论列表

tools.cretinzp.com/jokes/doc.h…

4.3.2.1 获取某一个评论的子评论列表

tools.cretinzp.com/jokes/doc.h…

4.3.2.2 获取对某个段子收藏状态

tools.cretinzp.com/jokes/doc.h…

4.3.2.3 获取段子的点赞列表

tools.cretinzp.com/jokes/doc.h…

4.3.2.4 获取段子详情

tools.cretinzp.com/jokes/doc.h…

4.3.2.5 获取指定用户点赞的图文段子列表

tools.cretinzp.com/jokes/doc.h…

4.3.2.6 获取指定用户点赞的视频段子列表

tools.cretinzp.com/jokes/doc.h…

4.3.2.7 获取指定用户自己的视频段子列表

tools.cretinzp.com/jokes/doc.h…

4.3.2.8 获取指定用户自己的图文段子列表

tools.cretinzp.com/jokes/doc.h…

4.3.2.9 获取指定视频段子id列表的视频列表

tools.cretinzp.com/jokes/doc.h…

4.3.3.0 获取正在审核的段子列表

tools.cretinzp.com/jokes/doc.h…

4.3.3.1 给段子 踩/取消踩

tools.cretinzp.com/jokes/doc.h…

4.4 用户相关接口(28个)

4.4.1.1 用户关注

点击关注按钮触发的操作

tools.cretinzp.com/jokes/doc.h…

4.4.1.2 获取指定用户关注列表

点击某个用户头像,点击他的关注,进入关注列表。

tools.cretinzp.com/jokes/doc.h…

4.4.1.3 绑定邀请码

点击【我的】,点击【设置】,点击【用户信息】,最下面,绑定邀请码。

tools.cretinzp.com/jokes/doc.h…

4.4.1.4 检查视频下载权限

点击任意视频段子,点击更多,点击下载,下载前调用此接口判断能否下载视频。

tools.cretinzp.com/jokes/doc.h…

4.4.1.5注销账户

点击【我的】,点击【设置】,点击【账号与安全】,最下面,注销账户。

tools.cretinzp.com/jokes/doc.h…

4.4.1.6 获取当前登录用户收藏列表

点击【我的】,点击顶部用户昵称,切换tab到收藏。

tools.cretinzp.com/jokes/doc.h…

4.4.1.7 获取指定用户评论列表

点击【我的】,点击顶部用户昵称,切换tab到评论。

tools.cretinzp.com/jokes/doc.h…

4.4.1.8 获取指定用户粉丝列表

点击【我的】,点击顶部用户昵称,点击粉丝

tools.cretinzp.com/jokes/doc.h…

4.4.1.9 获取当前登录的用户信息

点击【我的】,会获取当前用户信息

tools.cretinzp.com/jokes/doc.h…

4.4.2.0 获取指定用户的用户信息

点击用户头像,进入个人主页,会调用此接口。

tools.cretinzp.com/jokes/doc.h…

4.4.2.1 更新当前用户的用户信息

点击【我的】,点击顶部昵称,进入我的主页,点击编辑信息。

tools.cretinzp.com/jokes/doc.h…

4.4.2.2 获取当前用户的段子列表

点击【我的】,点击顶部用户昵称,切换tab到作品。

tools.cretinzp.com/jokes/doc.h…

4.4.2.3 获取当前登录用户的积分信息

点击【我的】,点击顶部【乐豆】,顶部信息

tools.cretinzp.com/jokes/doc.h…

4.4.2.4 获取当前登录用户的积分列表信息

点击【我的】,点击顶部【乐豆】,列表数据

tools.cretinzp.com/jokes/doc.h…

4.4.2.5 当前用户抽奖

点击【我的】,点击顶部【乐豆】,点击【乐豆抽奖】

tools.cretinzp.com/jokes/doc.h…

4.4.2.6 当前用户抽奖列表

点击【我的】,点击顶部【乐豆】,点击【乐豆抽奖】,点击抽奖记录

tools.cretinzp.com/jokes/doc.h…

4.4.2.7 获取当前用户喜欢的段子列表

点击【我的】,点击顶部用户昵称,切换tab到喜欢。

tools.cretinzp.com/jokes/doc.h…

4.4.2.8 验证码登录

tools.cretinzp.com/jokes/doc.h…

4.4.2.9 获取登录验证码

tools.cretinzp.com/jokes/doc.h…

4.4.3.0 账号密码登录

tools.cretinzp.com/jokes/doc.h…

4.4.3.1 获取当前用户的消息列表

点击【消息】,点击顶部消息入口。

tools.cretinzp.com/jokes/doc.h…

4.4.3.2 获取当前登录用户系统消息列表

Click [Message], click the system message item in the list

tools.cretinzp.com/jokes/doc.h…

4.4.3.3 Get the number of unread messages of the currently logged-in user

Click [Message] to get the message unread, displayed at the top

tools.cretinzp.com/jokes/doc.h…

4.4.3.4 Change Password

tools.cretinzp.com/jokes/doc.h…

4.4.3.5 Reset password

tools.cretinzp.com/jokes/doc.h…

4.4.3.6 Reset password to get verification code

tools.cretinzp.com/jokes/doc.h…

4.4.3.7 Searching for Users

Click [Messages] and click the search button in the upper right corner.

tools.cretinzp.com/jokes/doc.h…

4.4.3.8 Current User Check-in

Entering the homepage will automatically call this interface and issue points.

tools.cretinzp.com/jokes/doc.h…

4.5 Imitation vibrato stroke (1)

4.5.1 Get the recommendation list data of the one-swipe page

Click [one stroke] to get the list data

tools.cretinzp.com/jokes/doc.h…

Guess you like

Origin juejin.im/post/7088630212371415076