Heim > Web-Frontend > js-Tutorial > Warum erhalte ich die Fehlermeldung „ReCaptcha-Fehler: Kein Schlüssel angegeben', wenn ich .env-Variablen in Nuxt.js verwende?

Warum erhalte ich die Fehlermeldung „ReCaptcha-Fehler: Kein Schlüssel angegeben', wenn ich .env-Variablen in Nuxt.js verwende?

Patricia Arquette
Freigeben: 2024-12-03 05:02:09
Original
340 Leute haben es durchsucht

Why Am I Getting a

Verwendung von .env-Variablen in Nuxt.js

Problem:

Beim Konfigurieren von ReCaptcha in Nuxt.js durch Lesen von Variablen Aus einer .env-Datei schlägt die Anwendung mit der Fehlermeldung „ReCaptcha-Fehler: Kein Schlüssel angegeben“ fehl. Konsolenprotokollfehler. Das Problem bleibt bestehen, obwohl der Schlüssel direkt fest codiert wurde, was auf ein Problem beim Lesen von .env-Variablen in nuxt.config hindeutet.

Lösung:

Wenn Nuxt.js Version 2.13 oder höher verwendet wird, unterstützt das Framework automatisch .env-Variablen. So greifen Sie auf Variablen aus .env zu:

  1. Erstellen Sie eine .env-Datei im Projektstamm und fügen Sie Schlüssel und Werte hinzu, z. B.:

    RECAPTCHA_SITE_KEY=6L....
    Nach dem Login kopieren
  2. Geben Sie in nuxt.config.js die Variablen je nach Zugriff entweder unter publicRuntimeConfig oder privateRuntimeConfig an Ebene:

    export default {
     publicRuntimeConfig: {
        recaptcha: {
          siteKey: process.env.RECAPTCHA_SITE_KEY,
          version: 3,
          size: 'compact'
        }
      }
    }
    Nach dem Login kopieren

Unterschiede:

  • publicRuntimeConfig kann überall aufgerufen werden.
  • privateRuntimeConfig kann nur sein Wird während der SSR (serverseitig) verwendet Rendering).

Beispiel:

this.$config.myPublicVariable  // accessing from Vue.js file
Nach dem Login kopieren

Für Nuxt.js Version 3:

Variablen definieren in runtimeConfig in nuxt.config.js:

import { defineNuxtConfig } from 'nuxt3'

export default defineNuxtConfig({
  runtimeConfig: {
    public: {
      secret: process.env.SECRET,
    }
  }
}
Nach dem Login kopieren

In Komponenten oder Composables:

import { useRuntimeConfig } from '#app'
const config = useRuntimeConfig()
Nach dem Login kopieren

Weitere Informationen finden Sie in der offiziellen Nuxt.js-Dokumentation:
https://nuxtjs.org/blog/moving-from-nuxtjs-dotenv-to-runtime-config /

Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Fehlermeldung „ReCaptcha-Fehler: Kein Schlüssel angegeben', wenn ich .env-Variablen in Nuxt.js verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage