Condivisione della tecnologia

Guida per l'aggiornamento dei progetti backend SpringBoot esistenti al framework Yudao (yudao-cloud)

2024-07-12

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

Guida per l'aggiornamento dei progetti backend SpringBoot esistenti al framework Yudao (yudao-cloud)



  1. Avvia il quadro del taro
    • estremità posteriore:Avvio rapido (progetto backend)
    • fine frontale:Avvio rapido (progetto backend)
    • Avviso:
      • È necessario scaricare Redis e Nacaos. Sono presenti tutorial nell'avvio rapido del backend.

      • Il comando per avviare nacos nel tutorial è errato. Se nacos non è distribuito in un cluster, utilizza il comando seguente per avviarlo.

        startup.cmd -m standalone
        
        • 1
  2. Impara a creare un nuovo servizio (dopo aver imparato a creare un nuovo servizio, puoi migrare il vecchio business)
    • Esercitazione:Crea nuovo servizio

      Ho riscontrato diversi problemi nel tutorial. Alcuni dei motivi sono stati trovati e altri non sono stati ancora trovati. Tuttavia, ciò non influisce sul follow-up. È solo una necessità di comprensione, il che è utile per comprendere il tutto struttura del progetto.

      • Le richieste di instradamento per pacchetti diversi sono diverse

        Ciò implica l'inoltro e l'inoltro delle richieste. Consulta qui per il metodo di implementazione -> Collegamento video

      • Dopo aver avviato il servizio demo, il documento swagger non può essere aperto utilizzando knife4j e viene segnalato un errore (non risolto ma non interessato)

        Errore front-end

        Errore di back-end

      • Si è verificato un errore durante il test dell'interfaccia Test nel tutorial

        Anche se l'autorizzazione e i tenant vengono simulati, la richiesta non può essere completata in base al file yml fornito in precedenza, quindi qui verrà restituito un errore.

        {
            "code": 401,
            "data": null,
            "msg": "账号未登录"
        }
        
        • 1
        • 2
        • 3
        • 4
        • 5
      • Dopo aver modificato il file di configurazione del gateway e aggiunto il percorso demo, il documento afferma che le interfacce di test dell'amministratore e dell'app possono essere testate normalmente, ma nota: non funziona!

        Poiché l'inquilino non è stato chiuso e il campo Autorizzazione non è stato aggiunto, il risultato restituito non è ancora valido!

    • Modifica il file di configurazione yml in yudao-cloud
      • Instradamento e inoltro

        Modifica application.yaml nel gateway (questo è incluso nel tutorial per la creazione di un nuovo servizio)

        aggiungere aRegole di instradamento e inoltro, affinché la richiesta venga inoltrata correttamente

        aggiungere aregole di routing e inoltro di knife4j, in modo da poter visualizzare normalmente il documento swagger ([tutorial ufficiale knive4j]

      • Inquilini viciniSaaS multi-tenant [isolamento sul campo]

        Modifica application.yaml di biz nel sistema

        Arresta il tenant (se il tuo vecchio progetto non coinvolge tenant, la mia comprensione attuale è che ogni microservizio deve modificare questa posizione per arrestare il tenant, altrimenti riporterà "L'ID tenant richiesto non è stato passato, risolvere il problema" questo errore !)

        Per prima cosa disattiva la funzione tenant, ma non è sufficiente: devi anche aggiungere regole per ignorare gli URL per ignorare tutti gli URL! ! !

        C'è un altro campo che deve essere modificato nel front-end (in .env). Il nome del campo è diverso da quello nel documento, quindi non può essere trovato utilizzando la ricerca globale nel documento.

      • Certificazione dei gettoni

        ControlloAutorizzazioni delle funzioniDocumenta, modifica application-local.yaml di biz nel sistema

        In teoria, è possibile abilitare il meccanismo di simulazione del token e impostare il prefisso del meccanismo di simulazione del token, ma è inutile dopo l'operazione effettiva. Si prega di rispettare il tutorial e modificarlo.

    • Aggiungi al progetto i pacchetti jar richiesti dall'azienda
      • Va notato che quando si aggiungono pacchetti jar, è facile causare conflitti di dipendenze con l'architettura Maven originale di Yudao (in particolare knive4j) e le dipendenze devono essere escluse.

        <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
    • Verifica se il servizio appena creato può rispondere
      • Accedi e ottieni il token per l'autenticazione

      • Prova l'app-test

      • testadmin-test

        Prestare attenzione all'autenticazione dell'autorizzazione nell'intestazione della richiesta.

        Authorization:Bearer f4fb08efe73a4a98bb248da70f4cc514
        
        • 1