00:00
好,接下来呢,我们来创建这个controller层,那么controller层呢,在我们的。S2B这个地方啊,然后呢,我们去创建一个controller。好,然后我们把它写到API这个包下面吧,然后接下来呢,在controlt a这个包下面呢,我们创建一个class,这class呢,我们管它叫file controller,好,然后接下来呢,在file controller里面呢,我们先把一些注解的先给它粘贴过来,我就不写了。好,大家看这里面呢,叫阿里云文件管理,然后oss rest controller。然后接下来呢,是request map品啊,然后呢是apis这样的一个路径,然后呢,我们把刚才咱们写的给他引进来。
01:06
Fair service哈,好,然后接下来呢,后面我们再写2UPLOAD,好,上面这块呢,我们写post market。文件上传啊,我们一般都用post,然后这块呢是up。Upload,对,然后接下来呢,这面是API operation,我们把这个主页给它填上,这面呢叫文件上传,好upload这个方法这块呢,根据我们之前的一个经验,我们呢要写一个multi pass,然后接下来呢是好建议大家呢,在前面呀,这块都加上request request parameter啊,要不然那个W测试的时候可能会出现问题,所以呢,这块加上一个file,正常情况下我们去做测试的话,或者说去做上传的话,其实这个是可选的一个。
02:09
啊,注解你不写也行,但是如果你不写的话呢,它这个spaer当中它识别不出来哈,所以它得写上,就这个SPA当中能比较好测一下,然后这块呢,是我们的第一个参数啊,然后这第一个参数呢,我就先也给他写一个注解,叫做API,嗯,Parara meter,然后接下来呢,这面呢,我们写嗯,Y6文件哈。然后接下来呢,后面我们这面快的数啊,这是第一个参数,第二个参数呢,就是在前端我们上传的时候呢,会嗯,知道我们到底上传的是一个身份证照片,还是一个房产证照片,还是一个车车辆这个购置信息照片,那所以呢,我们要传一个就是它所上传的模块是什么,就我要上传到哪个具体的模块当中,Y6等于模块,然后这块呢,也是处哈,然后这面呢,我们写蕊。
03:13
对,Que parameter,然后这边呢,我们写Mo,其实就是它我们在业务层不是写了这么一个参数嘛,Mo是不是上传到哪个目录当中,然后Mo最后不是作为我们目录的一部分,把它拼接到最终的这个目录结构当中了嘛,所以指定的就是这个目录啊,就是顶层目录。然后接下来呢,在controller这个地方,我们module啊,这个注解后面就是string类型的Mo Mo对吧。好,那这块呢,就是我们整个的一个,嗯。方法的一个定义了,好,那这个定义好了之后呢,我们直接去调用我们后台刚才写的service就可以了,所以呢是file service点啊,我们来调用我们的upload的方法,然后接下来呢,我们把input stream呢给它传递进来,看看有没有input啊,Input stream在哪在file里面取啊,所以呢是fair.get input stream好,我们呢就拿到了这样的一个input stream。
04:19
然后接下来呢,再把这个model给它传递进来,就是mole,然后第三个步骤呢,在file里面我们还能够拿到它的original file name,就是原始的文件名字,好,我们再把original file name里面传递进来,这都是刚才我们定义的那个啊业务层接口里面需要的方法,然后接下来呢,我们来看。它呢是返回一个值的,哎,这个值是什么?我先告诉大家,是这个图片上传之后的URL地址,就是我们图片上传到我们的阿里云的这个oss服务器当中之后,大家可以看到。他这个每一个图片呢,它都有一个URL地址,通过这个URL地址,我们可以访问这个图片,或者是下载这个图片,那这个URL地址是啥呢?是它。
05:07
啊是他,所以呢,我们要把这个上传的URL地址呢给他返回,回来是这么个地址啊,好这个地址我们一会再研究,所以现在呢,我们知道了,在这个位置我们返回的service层,我们要返回的就是URL地址,好URL地址返回之后呢,我们直接就前端,并且把UR地址也要有回存给前端,为什么?因为前端它要展示这张图片啊,它必须得拿到它的URL对不对,所以呢,是message文件上传成功啊。然后呢,我们再把URL地址呢,给他送到前端去,所以这块我们可以写URUR好这块我们的返回的二对象呢,就处理好了,处理好了之后呢,这一片我们给他做一个异常的补货,该into the stream啊,我们给它做一个异常补货,嗯。
06:09
我还是用快捷键吧,CTRL加T哈,然后呢,Try catch。然后这边呢,我们就直接呢去就行了。Slow new business exception,然后这个里面呢,我们就写response um.uplo arrow啊,然后把这个原始的数据向你传过去,好打印一传跟踪站。这样的话呢,我们的这个方法呢,就写好了,写好了之后呢,还不要忘了upload的方法里面我们的return的这个string,你再给他return一下,所以现在我们来看我们的这个string长什么样啊。文件的URL地址,好文件的UR地址长什么样的,看刚才咱们就是复制下来的这个文件的URL地址,它呢是这样的啊,首先呢。
07:10
后面这部分的内容,我们呢,要给它改造成这样的。啊,改造成这样的话就说明它是什么呀?嗯,就是相当于我们刚才的key吧,对吧,Keep不就是module加上time for加file name嘛,所以整个从这块儿开始啊。从这块开始,其实呢,就是我们的K是不是啊,然后前面这是什么,前面呢,这是这款,这款呢,正好是我们的,看一下文件。And point oss什么北京阿里云CS com。Oss新北京对吧,正好是我们的。配置文件当中的endpoint。
08:01
所以这是and point啊,然后这块再有个点,这个点不要忘了还有个点对吧?啊,然后点前面这块是什么。这款是我们的name。你看这个8NAME是不是就是他呀,啊,所以这块呢,是我们的巴。8NAME是用平板BU17。对啊好,然后接下来前面是什么,前面就是HTPS冒冒号杠杠这个字符串了。啊,所以呢,我们的这个业务层,它的这个文件的绝对路径,我们也知道怎么去返回了,它呢,就是应该这样写HTTPS冒号杠杠,然后呢,加上oss properties点8NAME,刚才我们刚分析完。对吧,嗯,然后再加上点儿。
09:03
加上这个点,然后再加上oss properties.and point是吧?嗯,然后最后再加上。再加上杠加P。好这块呢,就是我们。整个的啊,这样的一个代码的一个生成的一个流程了。那么接下来呢,我们来重新启动一下这个服务啊,做一下文件上传的测试。在刚才咱们这个service里面,我们把OS呢给它重新启动。
10:02
好,我们的微服已经启动成功了,接下来呢,我们来访问一下8130这个端口。HTML,那是8130。好,接下来呢,我们来访问这个web API,然后呢,阿里云文件管理,我们点开这个文件上传,接下来呢,我们点击try it out,然后呢,在这里我们选择文件。在选择文件这里面呢,我们随便选择一个文件啊,然后接下来呢,我们点选择这个model模块啊,比如说model模块,我就随便写一个,比如说test,然后呢,接下来呢,我们选择execute。好,大家看这面呢,就是文件上传成功,并且呢也返回了一个URL地址,而这个URL地址呢,就是我们上传的文件的一个完整的路径,所以呢,我们可以访问一下这个路径,看一看呢,能不能下载下来,好这个图片呢,已经下载下来了,那我们来看一下我们上传的这张图片,就是它对不对?好,那接下来呢,我们来看一下阿里云的论坛上有没有这个图片在哈,那我们呢,来访问一下。
11:24
当前的这个目录下面的文件管理,然后呢,也有一个test目录已经被生成了,并且呢,Test下面有个2021有个零二有个二七,然后里面呢有一个文件,好,这个呢,就是刚才我们刚刚上传的一个文件,所以大家在做这个swer测试的时候一定要注意,第一你要确保你的文件已经上传成功了,第二你要确保你的文件的上传路径确实是当时我们规划的这样的一个路径啊,第三我们在上传成功之后,它返回了一个URL地址,这个URL地址你一定要像我这样去检查一下,看看能不能正确的下载下来,如果能证明我们整个这个接口开发完毕的,因为有的同学啥都好使,最后这个URL地址它拼的有点问题,然后最后导致呢,这个图片呢,不能够通过这个URL地址下载,那这样的话呢,你就要检查你代码编写的过程当中,是不是拼写URL这个部分出现了一些啊,就是细节上的错误,对吧,所以整个大家需要把这个。
12:24
测试啊做完整,所以这块呢,就是我们的。Oss文件上传微服务的这么一个创建,以及文件上传接口的一个开发。
我来说两句