Skip to content

Diseno-de-Software-2/API-Gateway-EduPay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API GATEWAY EduPay

Este es el API Gateway del proyecto EduPay.

Cómo ejecutar

Para ejecutar la pasarela de la API, es necesario tener instalado Node.js.

A continuación, es necesario instalar las dependencias:

npm install

Por último, puede ejecutar el API Gateway:

npm run dev

Port

El API Gateway se ejecutará en el puerto 3000.

Registro json

En este json se registra la cantidad de instancias por servicios que se tienen activas y si estas están activas o inactivas

{
  "services": {
    "auth": {
      "loadBalancerStrategy": "ROUND_ROBIN",
      "index": 0,
      "instances": []
    },
    "query": {
      "loadBalancerStrategy": "ROUND_ROBIN",
      "index": 0,
      "instances": []
    },
    "account": {
      "loadBalancerStrategy": "ROUND_ROBIN",
      "index": 0,
      "instances": []
    },
    "balance": {
      "loadBalancerStrategy": "ROUND_ROBIN",
      "index": 0,
      "instances": []
    },
    "pay": {
      "loadBalancerStrategy": "ROUND_ROBIN",
      "index": 0,
      "instances": []
    }
  }
}

Peticiones

Puntos finales abiertos

No authentication token required


Autenticación

  • URL

    localhost:3000/auth/login

  • Notas: Redirige a al servicio de autenticación para comprobar el usuario y contraseña y asignarte un token.



Eliminar un servicio

  • URL

localhost:3000/unregister

  • Method:

    POST

  • Parámetros de datos

        {
            apiName: "apiname",
            url: "..."
        }
  • Respuesta al éxito:

    • Code: 200
      Content: Service unregistered
  • Respuesta al error:

    • Code: Content: Error unregistering service

    O

    • Code: Content: Service not registered
  • Notas: Elimina un servicio en registry.json



Añade un servicio

  • URL

localhost:3000/register

  • Método:

    POST

  • Parámetros de datos

        {
            apiName: "apiname",
            protocol: "http",
            host: HOST,
            port: PORT,
        }
  • Respuesta al éxito:

    • Code: 200
      Content: Service registered
  • Respuesta al error:

    • Code: Content: Error registering service
  • Notas: Registra un servicio en registry.json



Activa o desactiva un servicio

  • URL

localhost:3000/switch/:apiname

  • Método:

    GET

  • Parámetros de la url

        {
            apiName: "apiname",
            url: "..."
        }
  • Respuesta al éxito:

    • Code: 200
      Content: Service updated
  • Error Response:

    • Code: Content: {err}
  • Notas: Activa o desactiva un servicio


Endpoints

Necesitan un campo de autorización en la cabecera que contenga el token dado por el servicio de autorización.

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages