00:00
各位同学大家好,刚才呢,咱们完成了权限管理中的两个接口,登录接口以及获取用户信息接口,那下面呢,我们开始进行接口的测试,首先我把服务器先启用起来,咱们通过完成接口测试。等他先完成启动。启动之后,我们在浏览器中输入测试的地址,我在里边快速输入一下local的800加in,咱们完成登录,那我在里边做个测试,比如现在我的用户名是ain。然后咱看一下密码啊,这个密码呢,我们到里边看一下啊,找到用户表。咱们看到啊,密码应该是这个123456,或者说应该是六个一啊,咱看一下啊,因为那是加密之后的。
01:06
现在点发送。各位看啊,现在是不是成功了,然后它返回一个token的字符串,证明登录接口是正确的,然后这个之后我们再试第二个,那就是获取用户信息的接口,这个接口中呢,因为咱们要从请求头里边传入相关的这个数据,就是获取到你那个用户的信息,所以为了测试方便啊,我把这接口给到稍微改一下,但是为了测试,要不然你还需要一下你的头的信息。那我这么来改啊,大家看啊,我把这位置写上一个固定值,就是ID等于二,就用ID等于二,咱们写上一个固定的值。现在我把服务器重新启动,咱们用它进行测试,因为刚才我们写的语句根据用户ID是二能得到相关的这个菜单,包括按钮的这个信息。
02:04
把它启动,然后咱们再进行测试。现在已经完成了啊,然后咱们找到这个接口部分,我先刷新一下,在里边点击发送。各位看到这里边说执行了一个全局异常,那咱看一下什么错啊,就证明这个接口目前一测试它出错了,出现了异常,那家看什么问题啊,我们到控制台中看一下,大家看是报错了,然后看报什么错啊,说这个顶报错了,然后什么诉说个个不到这个方法去执行,那这里边出现了问题。这问题为什么出现?下面给大家来详细解决下这个问题,我这里强调啊,首先比如说以后如果各位在开发中遇到这个问题呢,一般来讲应该是这么几个原因造成的,首先我们肯定是写了circle语句,刚才咱是不是写了语句,在这里边写的语句,那第一个问题是什么呢?就是你这个路径应该写错了,或者说你的方法名字写错了,但是目前我这些都是复制的,应该没有问题,如果这个问题不是,那可能是第二个原因,什么原因呢?这里给大家解释一下啊,大家看一下。
03:30
我现在这个项目是一个ma问工程,而ma问工程呢,在它启动运行的时候要进行编译加载,它译之后在项目中有个目录,叫大家看这里是不是有一个,然后里边是什么呢?大家看啊,你看一看就能看懂这里边是什么,其实就是它编译之后这个内容,就是把这代码编译成那个卡文件,给他编译之后内容,然后编译之后大家看啊,在它变译的目录中,我们看这个map里边map中有什么。
04:06
是不是有叉L,但是你发现这里是没有,这是我们目前的问题,就这里边变异之后没有插入文件,他找不到,最终报错了,说这个方法找不到,那具体什么原因,我在图里边给大家来写一下啊。我写到这位置,它是ma的一种。加载编译的机制。这个机制是怎么样的呢?这个位置啊,就是各位可以这么来理解,Ma在默认情况下。它加载的时候只会加载编译src。Java目录里边的这个Java类型的文件,其他类型文件它是不会进行加载的,具体怎么理解,大家看一下啊。是目录是是件,它就不加载,只会加载JA入类型文件,所以咱们最终发现这里边没有这个文件。
05:16
所以他就抱着这个错误啊,这是我们目前出现这个问题,就是没问这种加载机制默认只加载Java类型文件,其他类型文件它是不进行加载的,那问题出来之后,下面呢,我们说一下它的解决方式或者解决方案怎么去解决,给大家说一下啊首先。第一种解决方式,你可以这么做,把这个给它换一个目录,放到我们的这个置中去,大家看这里是不是叫resources,你看啊,Resource里个我们这个是不是已经载出来了,所以你可以把这个目录接复制过去是可以的,放到resources里边,这是第一种方案,我这里写一下啊。
06:08
放到这个目录下边,这是我们的第一个解决方案,但是这个方案这么做没有问题,只说我们用代码生成器生成的时候,它默认在这个位置,比如现在啊,我不想改这个结构,还想把插入文件就放到这里边,所以里边还有第二种解决方式,继续写一下啊,第二种怎么做呢?咱们通过。注意啊,就是通过这个配置方式进行加载,就是给它加上配置能实现,然后配置怎么做呢?我们需要改两个地方,第一个在这个po点插入文件中加上配置,然后第二个在项目的配置文件中,就是application这个配置文件中上配置。添加这是它的解决方式,那我们现在就用第二种方式进行实现,那咱们看怎么来做啊,我在资料中呢,给大家写好了一个文件里边已经写好了,然后大家看啊,第一步你在文件中加上以下这段话,就是一个build的标签,这个B的标签,咱们看一下啊,我把这些先都关掉。
07:21
咱保留一个最基础一个结构,然后大家看在service OA里边找到它的文件,咱们看啊,在里边这置是不是有一个build标签,然后里边一个啊,就这个插件,然后在这位置咱们加上我们缺少这个resource部分,把这个直接复制过来。复制之后大家看一下啊,主要是这部分什么意思?因可录的是包含它就表示在may问编译过程中,加载过程中会加载这个目录下中的这些类型文件,包括包括包括,这是我们加上一个配置,让他去加载这个类型的文件,这是第一步,然后这个之后并没有做完第二步,你在项目的配置文件中,Vacation杠里边再加上你文件的位置,让他能找到,然后加的就是里边的这个部分。
08:18
我把这个直接一。然后在下面我加上这段话叫map location,加上你配置文件的位置,这个位置要跟你的包保持一致,咱们查一下啊,加上加上,然后里边的点,通过以上两个配置,我们在may问编译过程中,它就会加载这下面的叉文件,要不然就会出现刚才那个错误。所现在啊,这个问题我们就解决了,我再重复一遍ma,在默认情况下,如果你是sc Java里那种只会加载Java类型文件,别的类型文件不加载,咱目前的件就没有加载,所以出错了。我们的解决方式就是第一种方式把这目录复制到resource下边是可以的。第二种方式通过配置实现,在po点插入文件中,在项目的配置文件中加上配置可以解决,咱们用的是第二种方式。
09:27
然后这个之后我把这个服务器咱们重新启动一下,然后最终做个测试啊,试一下最后结果这个咱们都加上了啊,我在这个资料中给大家后面会共享出来有这么两个配置部分,一个加上B的标签,包含你相关的类型文件,第二个加上你这个配置文件的位置。我们等它启动啊,然后咱们试一下。在这里边刷新。来到当前接口,我现在点发送。
10:00
大家看结果。数据是出来了,然后你看啊出来的数据第一部分buttons,就是咱说那个按钮,那个权限值,第二部分这个S里边有咱们那个路由的结构,这个结构是按照我们那个框架要求的格式做的封装,咱目前你看啊有系统管理。有分配权限,有角色管理这些值,包括你看啊,这个分配权限,它目前是什么意思,是不是隐藏路由,咱按照这种格式就完成了构建,所以以上啊是咱们完成的权限管理的接口,包括最终测试,然后最后这个问题希望大家记住,就是may问中加载这个问题,包括它的解决方式。
我来说两句