syscover / pulsar-core
核心包
Requires
- php: ^7.1.3
- doctrine/dbal: ^2.9
- intervention/image: ^2.5
- laravel/passport: ^7.2
- nuwave/lighthouse: ^3.5
This package is auto-updated.
Last update: 2024-08-28 06:59:38 UTC
README
Pulsar 是一个应用程序,它可以生成一个控制面板,在那里您可以开始创建自定义解决方案,并提供任何网络应用程序所需的所有资源。
安装
1 - 安装 Laravel 框架后,在控制台执行以下操作
composer require syscover/pulsar-core
注册服务提供者,在 config/app.php 文件中将以下内容添加到 providers 数组**
/*
* DH2 Application Service Providers...
*/
Syscover\Core\CoreServiceProvider::class,
2 - 执行发布命令
php artisan vendor:publish --provider="Syscover\Core\CoreServiceProvider"
3 - 然后执行迁移
php artisan migrate
4 - 执行命令以创建 laravel passport 的加密密钥
php artisan passport:install
5 - 在您 app/Providers/AuthServiceProvider 的 boot 方法中添加 Passport::routes 方法
此方法将注册发行访问令牌和撤销访问令牌、客户端和个人访问令牌所需的必要路由
use Laravel\Passport\Passport;
/**
* Register any authentication / authorization services.
*
* @return void
*/
public function boot()
{
$this->registerPolicies();
Passport::routes(); // add laravel passport routes
}
6 - 不要忘记在您的服务器中注册 CORS,以下示例适用于 Apache 服务器
Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Headers "authorization, origin, x-requested-with, content-type"
Header add Access-Control-Expose-Headers "authorization"
Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"
7 - 您可能需要扩展服务器上的 PHP 内存以及上传限制
php_value post_max_size 1000M
php_value upload_max_filesize 1000M
php_value memory_limit 256M
8 - 创建到存储文件夹的链接
php artisan storage:link
9 - 执行发布命令
php artisan vendor:publish --provider="Nuwave\Lighthouse\LighthouseServiceProvider"
php artisan vendor:publish --provider="Syscover\Core\CoreServiceProvider"
10 - 设置 GraphQl 中间件
在 config/lighthouse.php 中将以下内容添加到 route => middleware 数组
'middleware' => ['api', 'client'],
并在 error_handlers 中添加验证处理程序
'error_handlers' => [
...
\Syscover\Core\GraphQL\Execution\ExtensionValidationErrorHandler::class,
...
],
11 - 从本地主机消费 API 若要从您自己的域名消费 API 资源,您可以使用以下路由。
https://yourdomian.com/graphql/localhost
您需要在请求中发送 CSRF 令牌以验证您是否从 Laravel 发出请求。
12 - 添加 scss 在 resources/assets/sass/app.scss 文件中,您可以添加实用工具 scss 文件
// Material
@import "../../../vendor/syscover/pulsar-core/src/resources/sass/material/elevations";
// Partials
@import "../../../vendor/syscover/pulsar-core/src/resources/sass/partials/forms";
@import "../../../vendor/syscover/pulsar-core/src/resources/sass/partials/typography";
@import "../../../vendor/syscover/pulsar-core/src/resources/sass/partials/helpers";
@import "../../../vendor/syscover/pulsar-core/src/resources/sass/partials/cookies-consent";
@import "../../../vendor/syscover/pulsar-core/src/resources/sass/partials/vue";
如果您使用 Laravel Mix,请设置以下代码
mix
.styles([
...
'vendor/syscover/pulsar-core/src/assets/vendor/bootstrap/css/bootstrap.min.css',
...
], 'public/css/all.css')
.sass([
...
'vendor/syscover/pulsar-core/src/assets/scss/app.scss',
...
], 'public/css/app.css')
.scripts([
...
'vendor/syscover/pulsar-core/src/resources/vendor/polyfill/array.prototype.find.js',
'vendor/syscover/pulsar-core/src/resources/vendor/polyfill/array.prototype.foreach.js',
'vendor/syscover/pulsar-core/src/resources/vendor/territories/js/jquery.territories.js',
'vendor/syscover/pulsar-core/src/resources/vendor/check-postal-code/jquery.check-postal-code.js',
'vendor/syscover/pulsar-core/src/resources/vendor/jquery-validation/jquery.validate.min.js',
'vendor/syscover/pulsar-core/src/resources/vendor/jquery-validation/additional-methods.min.js',
'vendor/syscover/pulsar-core/src/resources/vendor/js-cookie/src/js.cookie.js',
'vendor/syscover/pulsar-core/src/resources/vendor/cookie-consent/cookie-consent.js'
...
], 'public/js/all.js')