校园帮接口1.0.0
<h1>校园帮接口设计</h1>
<table>
<thead>
<tr>
<th>修改人</th>
<th>修改时间</th>
<th>修改的详细内容</th>
</tr>
</thead>
<tbody>
<tr>
<td>小墨</td>
<td>19-4-24</td>
<td>初始化接口设计文档、声明文档备注、文档描述、接口编码测试和编码要求、接口详情(帖子、用户1、用户2、附加功能等57个接口)</td>
</tr>
<tr>
<td>小墨</td>
<td>19-4-27</td>
<td>增加用户2收藏帖子接口</td>
</tr>
</tbody>
</table>
<hr />
<h4>1、备注</h4>
<p>该接口设计文档可做开发接口的参考依据,部分参数、请求数据依照实际情况酌情修改。修改需要在群里说明并同步到此文档和对应的接口参数文档,并修改版本号,方便其他人员的查看。</p>
<h4>2、描述</h4>
<ul>
<li>
<h5>2.1 接 口 名</h5>
<p>root代表前缀路由,如127.0.0.1:8080</p>
</li>
<li>
<h5>2.2 接口说明</h5>
<p>描述接口用途</p>
</li>
<li>
<h5>2.3 方 法</h5>
<p>http请求方法</p>
</li>
<li>
<h5>2.4 请求数据</h5>
<p>请求数据,token放在请求头header</p>
</li>
<li>
<h5>2.5 返回数据</h5>
<p>仅简单描述了请求成功时返回数据中的data部分,除了data部分之外还有code和msg部分。对于请求错误需要返回对应的错误码和错误信息。</p>
</li>
</ul>
<h4>3、接口编码要求</h4>
<p>对于每一种请求错误情况建立对应的消息枚举{code:xxx,msg:xxx},并且统一使用异常抛出,由异常handle进行统一处理。每个接口写完之后对service进行单元测试,controller不放逻辑代码。每一个测试完全的接口,在showdoc中添加对应的接口详细信息,信息参考showdoc提供的API接口模板。每完成一定数量的接口,就打包成一个jar文件发到自己fork仓库的release中,注意版本命名,并通知测试对这个新的版本进行测试。</p>
<h4>4、接口测试要求</h4>
<p>下载新的jar包,使用java -jar xxx.jar指令在本地进行运行,对每一个新添加的接口使用postmen进行测试,测试边界情况和极限情况,将测试结果使用表格呈现,不符合条件的接口通知在接口全部测试完成后整理给编写人员修改bug。</p>
<hr />
<h1>接口详情</h1>
<h3>1、帖子部分(17)</h3>
<table>
<thead>
<tr>
<th><strong>接口名</strong></th>
<th><strong>接口说明</strong></th>
<th><strong>方法</strong></th>
<th><strong>请求数据</strong></th>
<th><strong>返回数据</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td>{root}/post/id/xxx</td>
<td>获取id为xxx的帖子详情</td>
<td>GET</td>
<td>-</td>
<td>帖子的详细全部内容</td>
</tr>
<tr>
<td>{root}/post/id/brief/xxxx</td>
<td>获取id为xxx的帖子简要信息</td>
<td>GET</td>
<td>-</td>
<td>帖子的简略内容,参考<img src="https://www.showdoc.cc/server/api/common/visitfile/sign/c36803d929cc8e83b1089f3bc776e491?showdoc=.jpg" alt="" /></td>
</tr>
<tr>
<td>{root}/post/num/xxx</td>
<td>获取最新的xxx条帖子列表</td>
<td>GET</td>
<td>-</td>
<td>post_id列表,xxx条 [xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/post/type/xxx</td>
<td>获取类别id为xxx的帖子列表</td>
<td>GET</td>
<td>-</td>
<td>post_id列表,[xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/post/search/xxx</td>
<td>搜索关键字为xxxx的帖子,返回列表</td>
<td>GET</td>
<td>-</td>
<td>post_id列表, [xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/post/search/hot</td>
<td>获取热门搜索关键词</td>
<td>GET</td>
<td>-</td>
<td>关键词列表, [xxx, xxx, xxx...]</td>
</tr>
<tr>
<td>{root}/post/approval/xxx</td>
<td>获取当前帖子的点赞用户列表</td>
<td>GET</td>
<td>post_id</td>
<td>user_id列表,[xxx, xxx, xxx...]</td>
</tr>
<tr>
<td>{root}/post/comment/xxx</td>
<td>获取当前帖子的评论用户列表</td>
<td>GET</td>
<td>post_id</td>
<td>user_id列表,[xxx, xxx, xxx...]</td>
</tr>
<tr>
<td>{root}/post/report/xxx</td>
<td>获取当前帖子的举报用户列表</td>
<td>GET</td>
<td>post_id</td>
<td>user_id列表,[xxx, xxx, xxx...]</td>
</tr>
<tr>
<td>{root}/post/comment/all/xxx</td>
<td>获取当前帖子的评论列表</td>
<td>GET</td>
<td>post_id</td>
<td>comments列表,包含评论详情[{...},{...}...]</td>
</tr>
<tr>
<td>{root}/post/approval</td>
<td>当前用户对帖子点赞</td>
<td>POST</td>
<td>post_id, token</td>
<td>-</td>
</tr>
<tr>
<td>{root}/post/comment</td>
<td>当前用户对帖子评论</td>
<td>POST</td>
<td>post_id ,token comment_content</td>
<td>-</td>
</tr>
<tr>
<td>{root}/post/report</td>
<td>当前用户对帖子举报</td>
<td>POST</td>
<td>post_id ,token ,report_reason</td>
<td>-</td>
</tr>
<tr>
<td>{root}/post/submit</td>
<td>帖主结贴</td>
<td>POST</td>
<td>post_id, token, submit_comment_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/post</td>
<td>当前用户发表新帖子</td>
<td>POST</td>
<td>token ,post_content{...}</td>
<td>新帖子的内容 ,post{...}</td>
</tr>
<tr>
<td>{root}/post</td>
<td>当前用户删除帖子</td>
<td>DELETE</td>
<td>token ,post_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/post</td>
<td>当前用户更新帖子</td>
<td>PUT</td>
<td>token, new_post_content{....}</td>
<td>-</td>
</tr>
</tbody>
</table>
<hr />
<h3>2、用户部分1(15)</h3>
<table>
<thead>
<tr>
<th><strong>接口名</strong></th>
<th><strong>接口说明</strong></th>
<th><strong>方法</strong></th>
<th><strong>请求数据</strong></th>
<th><strong>返回数据</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td>{root}/user/post</td>
<td>获取当前用户的所有帖子信息</td>
<td>GET</td>
<td>token</td>
<td>post_id列表,[xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/user/approval/post</td>
<td>获取当前用户点赞过的帖子</td>
<td>GET</td>
<td>token</td>
<td>post_id列表,[xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/user/comment/post</td>
<td>获取当前用户评论过的帖子</td>
<td>GET</td>
<td>token</td>
<td>post_id列表,[xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/user/report/post</td>
<td>获取当前用户举报过的帖子</td>
<td>GET</td>
<td>token</td>
<td>post_id列表,[xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/user/post</td>
<td>获取对应用户的帖子列表</td>
<td>GET</td>
<td>user_id</td>
<td>post_id列表,[xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/user/attention</td>
<td>获取当前用户的关注列表</td>
<td>GET</td>
<td>token</td>
<td>user_id列表,[xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/user/attention</td>
<td>当前用户关注对应的用户</td>
<td>POST</td>
<td>token,user_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/attention</td>
<td>当前用户取消关注对应的用户</td>
<td>DELETE</td>
<td>token,user_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user</td>
<td>获取当前用户的所有信息</td>
<td>GET</td>
<td>token</td>
<td>user{...}</td>
</tr>
<tr>
<td>{root}/user</td>
<td>获取对应用户的个人信息(非隐私部分)</td>
<td>GET</td>
<td>user_id</td>
<td>user_brief{...}</td>
</tr>
<tr>
<td>{root}/user</td>
<td>更新当前用户的资料</td>
<td>PUT</td>
<td>token,user_data{... }</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/message</td>
<td>查看用户收到的所有信息</td>
<td>GET</td>
<td>token</td>
<td>messages:[{...}, {...}, {...}...]</td>
</tr>
<tr>
<td>{root}/user/message</td>
<td>新建给对应用户的新消息</td>
<td>POST</td>
<td>token,user_id,message_content</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/report</td>
<td>举报对应用户</td>
<td>POST</td>
<td>token,user_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/student_approve</td>
<td>申请学生认证</td>
<td>POST</td>
<td>token,student_approve_data</td>
<td>-</td>
</tr>
</tbody>
</table>
<hr />
<h3>2、用户部分2 (14)</h3>
<table>
<thead>
<tr>
<th><strong>接口名</strong></th>
<th><strong>接口说明</strong></th>
<th><strong>方法</strong></th>
<th><strong>请求数据</strong></th>
<th><strong>返回数据</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td>{root}/user/helped</td>
<td>获取用户帮助成功的帖子列表</td>
<td>GET</td>
<td>token</td>
<td>post_id列表[xxx, xxx, xxx ...]</td>
</tr>
<tr>
<td>{root}/register</td>
<td>用户注册</td>
<td>POST</td>
<td>user_phone,user_password,sms_code</td>
<td>-</td>
</tr>
<tr>
<td>{root}/login</td>
<td>用户登录</td>
<td>GET</td>
<td>user_phone,user_password</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/password</td>
<td>用户修改密码</td>
<td>PUT</td>
<td>user_phone,user_new_password,sms_code</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user</td>
<td>删除对应用户</td>
<td>DELETE</td>
<td>token,user_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/points</td>
<td>获取用户积分数</td>
<td>GET</td>
<td>token</td>
<td>points</td>
</tr>
<tr>
<td>{root}/user/point</td>
<td>增加/减少用户积分</td>
<td>GET</td>
<td>token,num</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/setting</td>
<td>获取用户设置</td>
<td>GET</td>
<td>token</td>
<td>settings{...}</td>
</tr>
<tr>
<td>{root}/user/setting</td>
<td>更新用户设置</td>
<td>PUT</td>
<td>token,setting_data{...}</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/collect</td>
<td>收藏帖子</td>
<td>POST</td>
<td>token, post_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/collects</td>
<td>获取用户收藏列表</td>
<td>GET</td>
<td>token</td>
<td>collects:[{...}, {...}, {...}...]</td>
</tr>
<tr>
<td>{root}/user/collect</td>
<td>取消某个收藏</td>
<td>DELETE</td>
<td>token,collect_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/user/searches</td>
<td>获取搜索历史</td>
<td>GET</td>
<td>token</td>
<td>searches{...}</td>
</tr>
<tr>
<td>{root}user/searches</td>
<td>将用户当前的搜索历史状态改为不显示</td>
<td>DELETE</td>
<td>token</td>
<td>-</td>
</tr>
</tbody>
</table>
<hr />
<h3>4、附加功能(12)</h3>
<table>
<thead>
<tr>
<th><strong>接口名</strong></th>
<th><strong>接口说明</strong></th>
<th><strong>方法</strong></th>
<th><strong>请求数据</strong></th>
<th><strong>返回数据</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td>{root}/feedback</td>
<td>新增意见反馈</td>
<td>POST</td>
<td>token,feedback_data{... }</td>
<td>-</td>
</tr>
<tr>
<td>{root}/feedback/reply</td>
<td>回复意见反馈</td>
<td>POST</td>
<td>token,feedback_id,reply_content</td>
<td>-</td>
</tr>
<tr>
<td>{root}/feedback</td>
<td>获取意见反馈列表</td>
<td>GET</td>
<td>token</td>
<td>feedbacks:[{...},{...}]</td>
</tr>
<tr>
<td>{root}/feedback</td>
<td>获取某一条意见反馈信息的详细内容</td>
<td>GET</td>
<td>token,feedback_id</td>
<td>feedback:{...}</td>
</tr>
<tr>
<td>{root}/swipers</td>
<td>获取首页滚动图片列表</td>
<td>GET</td>
<td>-</td>
<td>swipers:[...]</td>
</tr>
<tr>
<td>{root}/ads</td>
<td>获取应用页面广告列表</td>
<td>GET</td>
<td>-</td>
<td>ads:[...]</td>
</tr>
<tr>
<td>{root}/questnaire</td>
<td>新建问卷</td>
<td>POST</td>
<td>token,questnaire_data{... }</td>
<td>-</td>
</tr>
<tr>
<td>{root}/questnaire</td>
<td>查询问卷</td>
<td>GET</td>
<td>questnaire_id</td>
<td>questnaire:{...}</td>
</tr>
<tr>
<td>{root}/questnaire</td>
<td>修改问卷</td>
<td>PUT</td>
<td>token,questnaire_id,new_questnaire_data{ ...}</td>
<td>-</td>
</tr>
<tr>
<td>{root}/questnaire</td>
<td>删除问卷</td>
<td>DELETE</td>
<td>token,,questnaire_id</td>
<td>-</td>
</tr>
<tr>
<td>{root}/questnaire/replay</td>
<td>回答问卷</td>
<td>POST</td>
<td>questnaire_id,replay_data{...}</td>
<td>-</td>
</tr>
<tr>
<td>{root}/questnaire/submit</td>
<td>截止问卷</td>
<td>GET</td>
<td>token,questnaire_id</td>
<td>-</td>
</tr>
</tbody>
</table>