【校招VIP】“推推”Java项目课程:接口设计——详情数据和快速验证

今天继续看一下商业实战项目【推推】小说详情模块的第三期。上节课做了文档设计,这节课做一下接口设计。

在前后端分离的项目里,接口设计非常重要。在正常的实习或者开发工作中,接口是需要Java工程师设计好。另一方面并行开发的前端就会知道可能会用哪些参数,然后来模拟这些参数来进行它的开发。等到后面上测试环境,它可以直接去调用,这样就打通了。

本期接口有两个,我们上节课也提到了这个部分,我们具体来看一下这个接口的设计。

第一个接口,是前端页面,打开这个小说详情页面的时候,就获取小说的详细信息,这个网址是可以访问的,但是大家注意,因为我们也是防止大家去刷我们的接口调用。这个大家想去测试调动这个接口的话,一定要去项目群跟运营去申请一个token,这个token拿完之后呢,大家可以有权限去访问数据。

然后这个小说接口的参数很简单,就是当前的小说ID是多少,传进来就好啊。后面我们会写代码,代码的时候我们会提供一个DEMO的项目的一个框架,就是在任何公司里面做前后端分离,都会有一个接口的功能大同小异,我们有三个值,一个是否成功固定的部分,然后如果成功的话就返回,它没有用,如果失败的话,这个地方可能是失败原因的话,就是不管是成功失败,你想要传的信息是什么。一般情况下失败是不传的。

那具体的信息有这些,是否订阅,但这个我们暂时说做不做都不重要,因为这个订阅功能不重要,在我们这个逻辑里面啊,有作者的这个ID名,但作者的ID名可能就有个问题。

他就是缺少一个also,但这个我们在数据库设计的时候已经做了冗余,他不光有ID,还有name。我们也放到了数据库里面,放在单个表里面,这个详情表里面,因为它有冗余,如果不冗余的话,就有另外一个映射表,你要放作者的一个表,1234567,但是这样的话,每次都要临场,尤其是详情页后面,它会有越来越多的功能会集成进来,所以说那个比如说评论什么什么的,所以这个查询的压力是比较大的,所以很多时候在设计上面要考虑到因为性能的原因,我们怎么去节省啊描述啊。

但这个描述的时候就是一个副文本,我们应该把这个处理一下,把这个回车下掉,然后前端就直接去展示它。

这是后面的一些名称啊封皮,然后最新更新时间啊。这个格式是因为转完之后的默认格式就这样子,前端也会按照这个格式去做解析啊,然后章节名看了时间,都比较类似。

数据比较清楚,那前端一看就知道,可以模拟接口,甚至后端在开发之前可以把数据写死,我们也做一个可访问的模拟接口给前端,这样的话双方的开发会比较正规的进行下去。

在今年的面试里面,校招或者实习,因为招聘量比较小,所以面试难度会提高,所以今年会出来一个很奇怪的现象,就是很多公司会对你项目的真实性进行一个提问,其实问了很多问题,说你跟产品怎么合作的,你跟前端怎么合作的,就一定要注意这个逻辑,而不是光去背一个课程啊,这个是没有用的。

第二个接口就更大,一个为了性能原因,我们加了一个短链期,这个链接呢,就是一个值,就是哪个小说它是不是更新了,那更新的话我们可能会加一个值,我们叫take ID啊,这个可能是我们的最后更新章节,也可能是加一个ready时间啊,这个等到我们后面有专门的开发时间跟大家去定这个逻辑。

它的返回值也比较简单是吧,data里面就返回一个true和false啊,true的意思就是更新了,那更新的时候它就需要,前端一开始更新了,它就需要重新调用这个更新详情信息,说明这个时候数据是这个数据已经不是已经不是这一张了,是吧,可能是已经是第62章了。如果是falser的话,说明没有更新,没有更新的话,那就是最新它就不用再去调用这个接口了。

posted @ 2022-12-30 16:38  校招VIP  阅读(35)  评论(0编辑  收藏  举报