Una aplicación sencilla para consumir servicios de API de recetas. Esto es para fines de demostración y se creó para demostrar habilidades de arquitectura y programación.
A continuación se detallan los puntos clave del diseño y cómo se han manejado e implementado.
Requisitos del entorno de desarrollo:
Configurando su entorno de desarrollo en su máquina local usando el script de instalación:
$ git clone https://github.com/ahsanatiq/no-framework-api
$ cd ahsanatiq-api-test
$ git checkout dev
$ ./setup.sh
Configuración manual:
$ git clone https://github.com/ahsanatiq/no-framework-api
$ cd ahsanatiq-api-test
$ git checkout dev
$ cp recipe-service/.env.dev recipe-service/.env
$ cp oauth-service/.env.dev oauth-service/.env
$ cp search-service/.env.dev search-service/.env
$ cp web-service/.env.dev web-service/.env
$ docker-compose up -d
$ docker exec -it ahsanatiq-recipe-service composer install
$ docker exec -it ahsanatiq-oauth-service composer install
$ docker exec -it ahsanatiq-search-service composer install
$ docker exec -it ahsanatiq-web-service composer install
$ docker exec -it ahsanatiq-recipe-postgres createdb -U hellofresh -O hellofresh hellofresh_testing
$ docker exec -it ahsanatiq-postgres-oauth createdb -U hellofresh -O hellofresh hellofresh_testing
$ docker exec -it ahsanatiq-oauth-service openssl genrsa -out /server/keys/id_rsa 2048
$ docker exec -it ahsanatiq-oauth-service openssl rsa -in /server/keys/id_rsa -pubout -out /server/keys/id_rsa.pub
$ docker exec -it ahsanatiq-recipe-service php vendor/bin/phinx migrate
$ docker exec -it ahsanatiq-oauth-service php vendor/bin/phinx migrate
$ docker exec -it ahsanatiq-oauth-service php vendor/bin/phinx seed:run
$ docker exec -it ahsanatiq-oauth-service php vendor/bin/phinx migrate -e testing
$ docker exec -it ahsanatiq-oauth-service php vendor/bin/phinx seed:run -e testing
$ docker exec ahsanatiq-search-service nohup /usr/bin/php /server/http/console.php consume:recipes &
Ahora puede acceder a la aplicación a través de http://localhost:8000.
Ejecute las pruebas unitarias en el contenedor Recipe-Service:
$ docker exec -it ahsanatiq-recipe-service php vendor/bin/codecept run
Ejecute las pruebas de aceptación en el contenedor del servicio web:
$ docker exec -it ahsanatiq-web-service php vendor/bin/codecept run
Puede acceder a la documentación pública de la API en Postman. Para importar y ejecutar todas las API, haga clic en "Ejecutar en Postman" en la barra superior. Después de instalar e importar, verá la nueva colección como "API HelloFresh-Recipes". Para acceder a las API protegidas, primero debe ejecutar generar el token desde el punto final "Autenticación -> Obtener token". Luego actualice el "access_Token" en la configuración del entorno "HelloFresh-Dev" haciendo clic en la esquina superior derecha dentro de la aplicación Postman.