Безголовый API-интерфейс GraphQL для электронной коммерции, который использует Laravel в качестве бэкэнда.
Первым делом мы установим службу API laravel. Первым делом мы установим приложение laravel.
composer create-project laravel/laravel avored-backend
cd avored-backend
composer require avored/framework
composer require avored/dummy-data
composer require avored/cash-on-delivery
composer require avored/pickup
Настройте значения .env и CORS.
Чтобы исправить CORS в вашем приложении laravel8. Вы можете открыть config/cors.php
и заменить в файле код, как показано ниже.
'allowed_origins' => ['http://localhost:8080'],
После завершения настройки .env мы можем установить электронную коммерцию AvoRed.
php artisan avored:install
php artisan vendor:publish --provider="AvoRedFrameworkAvoRedServiceProvider"
yoursite.com/graphiql
После того, как avored/framework будет установлен, мы обязательно настроим CORS, чтобы разрешить доступ к API-интерфейсу GraphQL через любой интерфейс.
git clone https://github.com/avored/laravel-ecommerce avored-frontend
cd avored-frontend
npm install
npm run serve
Выполните следующую команду:
git clone https://github.com/avored/docker-dev.git
cd docker-dev
git clone https://github.com/avored/laravel-ecommerce ./src/frontend
docker-compose up -d
docker-compose run --rm composer create-project laravel/laravel:8.6 ./
docker-compose run --rm composer require avored/framework
docker-compose run --rm composer require avored/dummy-data avored/cash-on-delivery avored/pickup
Теперь настройте файл .env
. Откройте файл .env любимого приложения, который расположен по адресу ./src/backend/.env
затем настройте свою базу данных и любую другую среду в соответствии с вашим файлом docker-compose.yml.
DB_HOST=mysql
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
Теперь нам просто нужно установить AvoRed и создать любимую учетную запись администратора.
docker-compose run --rm artisan avored:install
docker-compose run --rm artisan vendor:publish --provider="AvoRedFrameworkAvoRedServiceProvider"
Теперь нам нужно настроить CORS, чтобы интерфейсное приложение могло получать вызов API от backnd. Откройте ./src/backend/config/cors.php
, затем замените строку ниже.
'paths' => ['/graphql', 'sanctum/csrf-cookie'],
'allowed_origins' => ['http://localhost:8060'],
Вот и все. Теперь вы можете посетить http://localhost:8060
для внешнего интерфейса, а для внутреннего интерфейса вы можете посетить http://localhost:8050/admin