Node.js

Configurar el entorno backend

Crear el proyecto

Abre un terminal y crea una nueva carpeta:

mkdir -p vonage-verify-tutorial/backend cd vonage-verify-tutorial/backend npm init -y

npm init -y crea un package.jsonque es donde npm rastrea dependencias y scripts.

Instalar dependencias

npm install express cors dotenv @vonage/auth @vonage/verify2

Para qué sirve cada paquete:

  • express: framework web para construir nuestros puntos finales de API HTTP.
  • corspermite peticiones desde la aplicación Android (origen diferente).
  • dotenv: carga variables de entorno desde un archivo local .env.
  • @vonage/authayuda a generar/autenticar solicitudes de Vonage usando JWT.
  • @vonage/verify2Verify API Server SDK (inicie una verificación y, a continuación, compruebe un código utilizando el request_id).

Por último, asegúrese de que no cometemos el node_modules a nuestro repositorio git:

echo "node_modules" >> .gitignore

Crear app.js

app.js será el punto de entrada de nuestra aplicación backend. Este es el archivo que inicia un servidor HTTP y expone los puntos finales a los que llamará la aplicación móvil.

Crea el archivo:

touch app.js

Por ahora, añadiremos un servidor Express mínimo sólo para verificar que todo está cableado correctamente.

Para qué sirve:

  • Carga variables de entorno mediante dotenv
  • Crea un Express aplicación
  • Habilita:
    • cors para que una aplicación móvil pueda llamar a esta API
    • express.json() para leer los cuerpos de las peticiones JSON
  • Expone un /health para comprobar rápidamente que el servidor se está ejecutando

Puede iniciar el servidor con:

node app.js

A continuación, abre un navegador o ejecuta:

curl http://localhost:3000/health

Deberías verlo:

{ "status": "ok" }

Recuerde: Este punto final no tiene nada que ver con Verify. Es sólo una comprobación de cordura antes de añadir más lógica.

Crear el archivo de configuración

Utilizaremos un .env para almacenar la configuración y los secretos, como las credenciales de la API.

De momento, crea un archivo vacío:

touch .env

Lo completaremos en la próxima sección, una vez que presentemos las credenciales de Vonage y expliquemos para qué se utiliza cada variable.

Por último, asegúrese de que .env es no comprometido para no confirmar credenciales accidentalmente. Cada desarrollador tendrá su propia versión:

echo ".env" >> .gitignore

Estructura de carpetas actualizada

Después de este paso, su carpeta backend tendrá el siguiente aspecto: