在bladex物联网平台中的“代码生成”功能生成代码并在角色管理里配置角色绑定的菜单后,在页面没有调用接口

Blade 未结 1 149
xiaoliu
xiaoliu 剑圣 2024-09-10 09:32

一、该问题的重现步骤是什么?

1.“研发工具”中创建好数据源,然后再bladex物联网平台中的“代码生成”功能,生成代码后并执行生成的sql脚本,在角色管理里配置角色绑定的菜单后,“设备管理”目录下可以看到“故障诊断”,但是页面是空的。前端生成的代码的url带有“/api/blade-diagnosis”前缀,后端生成代码没有“/blade-diagnosis”前缀。

image.png


image.png

image.png


image.png

image.png

image.png

image.png

二、你期待的结果是什么?实际看到的又是什么?

期待的结果:点击“代码生成”,并执行生成的blade_menu的sql脚本,配置角色管理里配置角色绑定的菜单后,页面上点击“故障诊断”,能调用后端接口,并在页面能出现对应的数据

实际看到的:页面上点击“故障诊断”,未出现调用后端接口,页面也没有出现对应的数据

三、你正在使用的是什么产品,什么版本?在什么操作系统上?

正在使用的产品:BladeX物联网平台

版本:1.1.0

操作系统:Windows11


四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

1条回答
  • 2024-09-10 11:28

    springboot和springcloud两种调用方式不一样,你昨天问的代码生成在bladex,是springcloud,今天问的iot是springboot。

    1. springcloud因为有gateway的存在,调用的时候会做一层转发,把服务名放在调用的controllerkey里,但是这个服务名又是虚拟加上的,不真实存在于controller里,所以cloud版本调用的时候,controller是不需要加上对应的服务名比如blade-test的。

    2. 但是springboot没有网关,要调用的地址就是需要真实写在controller里的。

    3. 又因为需要让cloud和boot两者的最终地址一致,所以springboot版本就需要把服务名比如blade-test,写到controller里了。

    4. 而前端是始终都需要写blade-test的。


    iot基于开源版的springblade,好像还没法加上hasServiceName,下版本加上,现在需要先自己设置一下controllerkey 。

    路由页面地址看这里:https://www.bilibili.com/video/BV1Lm421H7ZL ,看完你应该就知道怎么排查了

    作者追问:2024-09-10 16:22

    找到原因了,前端生成的/vaildData拼错了,应该是/validData后,接口就正常了。

    image.png

    image.png


    image.png

    0 讨论(0)
提交回复