Compartir tecnología

Guía para actualizar proyectos backend SpringBoot existentes al marco Yudao (yudao-cloud)

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Guía para actualizar proyectos backend SpringBoot existentes al marco Yudao (yudao-cloud)



  1. Iniciar el marco del taro
    • extremo posterior:Inicio rápido (proyecto backend)
    • Interfaz:Inicio rápido (proyecto backend)
    • Aviso:
      • Debes descargar Redis y Nacaos. Hay tutoriales en el inicio rápido del backend.

      • El comando para iniciar nacos es incorrecto en el tutorial. Si nacos no está implementado en un clúster, use el siguiente comando para iniciarlo.

        startup.cmd -m standalone
        
        • 1
  2. Aprenda a crear un nuevo servicio (después de aprender a crear un nuevo servicio, puede migrar negocios antiguos)
    • Tutorial:Crear nuevo servicio

      Encontré varios problemas en el tutorial. Se han encontrado algunas razones y otras aún no se han encontrado. Sin embargo, no afecta el seguimiento. Es solo una necesidad de comprensión, lo cual es útil para comprender el general. estructura del proyecto.

      • Las solicitudes de enrutamiento para diferentes paquetes son diferentes

        Esto implica el enrutamiento y reenvío de solicitudes. Consulte aquí el método de implementación ->. Enlace de video

      • Después de iniciar el servicio de demostración, el documento swagger no se puede abrir con knife4j y se informa un error (no resuelto pero no afectado)

        Error de interfaz

        Error de fondo

      • Hay un error al probar la interfaz de prueba en el tutorial.

        Incluso si se simulan la autorización y los inquilinos, la solicitud no se puede completar en función del archivo yml proporcionado anteriormente, por lo que se devolverá un error aquí.

        {
            "code": 401,
            "data": null,
            "msg": "账号未登录"
        }
        
        • 1
        • 2
        • 3
        • 4
        • 5
      • Después de modificar el archivo de configuración de la puerta de enlace y agregar la ruta de demostración, el documento dice que las interfaces de prueba de administración y aplicación se pueden probar normalmente, pero tenga en cuenta: ¡no funciona!

        Debido a que el inquilino no se ha cerrado y no se ha agregado el campo Autorización, el resultado devuelto aún no es válido.

    • Modifique el archivo de configuración yml en yudao-cloud
      • Enrutamiento y reenvío

        Modifique application.yaml en la puerta de enlace (esto se incluye en el tutorial para crear un nuevo servicio)

        añadirReglas de enrutamiento y reenvío, para que la solicitud se reenvíe correctamente

        añadirreglas de enrutamiento y reenvío de knife4j, para que puedas ver el documento swagger normalmente ([tutorial oficial de knive4j]

      • Cerrar inquilinosSaaS multiinquilino [aislamiento de campo]

        Modifique la aplicación.yaml de biz en el sistema

        Cierre el inquilino (si su proyecto anterior no involucra inquilinos, según tengo entendido actualmente, cada microservicio debe modificar este lugar para cerrar el inquilino; de lo contrario, informará "No se aprobó la ID de inquilino solicitada, solucione el problema" este error !)

        Primero, desactive la función de inquilino, pero no es suficiente. ¡También necesita agregar reglas para ignorar las URL para ignorar todas las URL! ! !

        Hay otro campo que debe cambiarse en la parte frontal (en .env). El nombre del campo es diferente al del documento, por lo que no se puede encontrar mediante la búsqueda global en el documento.

      • Certificación de tokens

        ControlarPermisos de funcionesDocumento, modificar application-local.yaml de biz en el sistema

        En teoría, puede habilitar el mecanismo de simulación de token y configurar el prefijo de token del mecanismo de simulación de token, pero es inútil después de la operación real. Respete el tutorial y cámbielo.

    • Agregue los paquetes jar requeridos por la empresa al proyecto.
      • Cabe señalar que al agregar paquetes jar, es fácil causar conflictos de dependencia con la arquitectura maven original de Yudao (especialmente knive4j), y es necesario excluir las dependencias.

        <dependency>
            <groupId>xx.xx.xx</groupId>
            <artifactId>xx-xx-spring-boot-starter</artifactId>
            <version>1.0.19</version>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-autoconfigure</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>mysql</groupId>
                    <artifactId>mysql-connector-java</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>com.github.xiaoymin</groupId>
                    <artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
        • 15
        • 16
        • 17
        • 18
        • 19
        • 20
        • 21
        • 22
        • 23
    • Pruebe si el servicio recién creado puede responder
      • Inicie sesión y obtenga un token de autenticación

      • Prueba de aplicación

      • prueba-testadmin

        Preste atención a la autenticación de autorización en el encabezado de la solicitud.

        Authorization:Bearer f4fb08efe73a4a98bb248da70f4cc514
        
        • 1