Une application simple pour consommer des services API de recettes. Ceci est à des fins de démonstration et créé pour démontrer les compétences en architecture et en programmation.
Vous trouverez ci-dessous les points clés de la conception et la manière dont ils ont été traités et mis en œuvre.
Exigences de l'environnement de développement :
Configuration de votre environnement de développement sur votre machine locale à l'aide du script de configuration :
$ git clone https://github.com/ahsanatiq/no-framework-api
$ cd ahsanatiq-api-test
$ git checkout dev
$ ./setup.sh
Configuration manuelle :
$ 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 &
Vous pouvez désormais accéder à l'application via http://localhost:8000.
Exécutez les tests unitaires dans le conteneur Recipe-Service :
$ docker exec -it ahsanatiq-recipe-service php vendor/bin/codecept run
Exécutez les tests d'acceptation dans le conteneur Web-Service :
$ docker exec -it ahsanatiq-web-service php vendor/bin/codecept run
Vous pouvez accéder à la documentation publique de l'API sur Postman. Pour importer et exécuter toutes les API, cliquez sur "Exécuter dans Postman" dans la barre supérieure. Après l'installation et l'importation, vous verrez la nouvelle collection sous le nom "API HelloFresh-Recipes". Pour accéder aux API protégées, vous devez d'abord exécuter la génération du jeton à partir du point de terminaison "Authentification -> Obtenir le jeton". Mettez ensuite à jour le "access_Token" dans le paramètre d'environnement "HelloFresh-Dev" en cliquant sur le coin supérieur droit de l'application Postman.