Rimozione della gestione delle API in corso...

Se hai aggiunto la gestione delle API alla tua applicazione su Google Cloud e in seguito decidi di non volere le funzionalità di gestione delle API, puoi configurare Cloud Endpoints Frameworks per interrompere la gestione della tua API.

La rimozione della gestione dell'API non impedisce la pubblicazione dell'API. Se non vuoi più pubblicare la tua API, puoi disabilitare l'applicazione nella pagina Impostazioni di App Engine in Google Cloud Console oppure puoi eliminare il progetto Cloud. Per ulteriori informazioni, consulta Disattivazione di un'applicazione e arresto di un progetto.

Per rimuovere la gestione delle API:

  1. Esegui il backup dei file web.xml e appengine-web.xml del progetto API.

  2. Nel file web.xml del progetto API, rimuovi quanto segue:

    • Il filtro endpoints-api-configuration.
    • Il filtro endpoints-api-controller.
    • La mappatura dei filtri endpoints-api-configuration.
    • La mappatura dei filtri endpoints-api-controller.

    Dopo aver eliminato i filtri e le mappature dei filtri, web.xml dovrebbe essere simile al seguente:

    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
             http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
             version="3.1">
        <!-- Wrap the backend with Endpoints Frameworks v2. -->
        <servlet>
            <servlet-name>EndpointsServlet</servlet-name>
            <servlet-class>com.google.api.server.spi.EndpointsServlet</servlet-class>
            <init-param>
                <param-name>services</param-name>
                <param-value>com.example.skeleton.MyApi</param-value>
            </init-param>
        </servlet>
        <!-- Route API method requests to the backend. -->
        <servlet-mapping>
            <servlet-name>EndpointsServlet</servlet-name>
            <url-pattern>/_ah/api/*</url-pattern>
        </servlet-mapping>
    </web-app>
  3. Nel file appengine-web.xml, rimuovi la riga che definisce la variabile di ambiente ENDPOINTS_SERVICE_NAME. Se ENDPOINTS_SERVICE_NAME è l'unica variabile di ambiente che hai definito, rimuovi l'intera sezione env-variables.

  4. Pulisci il progetto e quindi crea la tua API:

    Maven

        mvn clean
        mvn package

    Gradle

        gradle clean
        gradle build
  5. Esegui nuovamente il deployment dell'applicazione:

    Maven

    mvn appengine:deploy

    Gradle

    gradle appengineDeploy

Dopo aver eseguito nuovamente il deployment dell'applicazione, Cloud Endpoints Frameworks smetterà di gestire la tua API.

Verifica della rimozione della gestione delle API

Per verificare che Endpoints Frameworks non gestisca più la tua API:

  1. In Google Cloud Console, vai alla pagina Endpoint > Servizi.

    Vai alla pagina Servizi di endpoint

  2. Annota il numero di richieste in uno dei metodi della tua API.

  3. Fai clic sul link View logs relativo al metodo.

  4. Nel log Produced API, prendi nota della data e dell'ora della voce di log più recente.

  5. Invia alcune richieste al metodo nella tua API.

  6. In Google Cloud Console, vai alla pagina Endpoint > Servizi.

    Vai alla pagina Servizi di endpoint

    Il contatore delle richieste per il metodo non è aggiornato.

  7. Fai clic sul link View logs relativo al metodo.

    Il log Produced API non contiene le voci di log relative alle richieste inviate.

Rimozione delle dipendenze nella configurazione della build

Anche se non è obbligatorio, potresti voler rimuovere le dipendenze nella configurazione della build.

Per rimuovere le dipendenze nella configurazione della build:

  1. Esegui il backup del tuo file pom.xml o build.gradle.

  2. Rimuovi le seguenti dipendenze:

    • endpoints-management-control-appengine
    • endpoints-management-control-appengine-all
    • endpoints-framework-auth
  3. Pulisci il progetto e quindi crea la tua API:

    Maven

        mvn clean
        mvn package

    Gradle

        gradle clean
        gradle build
  4. Esegui nuovamente il deployment dell'applicazione:

    Maven

    mvn appengine:deploy

    Gradle

    gradle appengineDeploy

  5. Testa l'API per assicurarti che funzioni come previsto.

Eliminazione del servizio gestito

Endpoints Frameworks utilizza la gestione dei servizi di Google per gestire l'API. Quando hai eseguito il deployment del documento OpenAPI utilizzando il comando gcloud endpoints services deploy, il comando ha utilizzato Service Management per creare un servizio gestito per la tua API. Se non hai bisogno dei dati presenti nella pagina Endpoint & Servizi e nel log dell'API prodotta nella pagina Visualizzatore log, puoi eliminare il servizio gestito per la tua API, che rimuove i dati da Google Cloud Console.

Per eliminare il servizio gestito:

  1. Assicurati che l'interfaccia a riga di comando gcloud (gcloud) sia autorizzata ad accedere ai tuoi dati e servizi su Google Cloud:

    gcloud auth login
    
  2. Inserisci quanto segue per visualizzare gli ID progetto per i tuoi progetti Google Cloud:

    gcloud projects list
    
  3. Utilizzando l'ID progetto applicabile al passaggio precedente, imposta il progetto Cloud predefinito su quello in cui si trova l'applicazione:

    gcloud config set project [YOUR_PROJECT_ID]
    
  4. Ottenere il nome di tutti i servizi gestiti nel tuo progetto Cloud:

    gcloud endpoints services list
    
  5. Elimina il servizio da Service Management. Sostituisci SERVICE_NAME con il nome del servizio che vuoi rimuovere.

    gcloud endpoints services delete SERVICE_NAME
    

    L'esecuzione di gcloud endpoints services delete non elimina immediatamente il servizio gestito. Service Management disattiva il servizio gestito per 30 giorni, consentendoti di ripristinarlo in caso di necessità. Dopo 30 giorni, Service Management elimina definitivamente il servizio gestito.

Passaggi successivi