Мне нужна ваша помощь с FileUpload с использованием GCP. У меня есть два способа загрузки изображений:
Вот мой код ресурса:
Forms\Components\FileUpload::make('attachments')
->columnSpan(2)
->fetchFileInformation(false)
->label('Attachments')
->multiple()
->previewable()
->reorderable()
->downloadable()
->openable()
->directory('attachments')
->storeFileNamesIn('original_filenames')
->disabled($user
->cannot('admin:customer_support_request:view_attachments'))
->hidden($user
->cannot('admin:customer_support_request:edit_attachments')),
Вот мой код файла filesystem.php:
'gcs-media' => [
'driver' => 'gcs',
'project_id' => env('GOOGLE_CLOUD_PROJECT_ID', 'project_id'),
'bucket' => env('GOOGLE_CLOUD_MEDIA_STORAGE_BUCKET', 'test.com'),
'visibility' => 'public',
'bucket_url' => env('GOOGLE_CLOUD_MEDIA_BUCKET_URL'),
'storage_api_uri' => env('GOOGLE_CLOUD_MEDIA_BUCKET_URL'),
'visibility_handler' => \League\Flysystem\GoogleCloudStorage\UniformBucketLevelAccessVisibility::class,
'key_file' => [
'type' => env('GOOGLE_CLOUD_MEDIA_ACCOUNT_TYPE'),
'private_key_id' => env('GOOGLE_CLOUD_MEDIA_PRIVATE_KEY_ID'),
'private_key' => env('GOOGLE_CLOUD_MEDIA_PRIVATE_KEY'),
'client_email' => env('GOOGLE_CLOUD_MEDIA_CLIENT_EMAIL'),
'client_id' => env('GOOGLE_CLOUD_MEDIA_CLIENT_ID'),
'auth_uri' => env('GOOGLE_CLOUD_MEDIA_AUTH_URI'),
'token_uri' => env('GOOGLE_CLOUD_MEDIA_TOKEN_URI'),
'auth_provider_x509_cert_url' => env('GOOGLE_CLOUD_MEDIA_AUTH_PROVIDER_CERT_URL'),
'client_x509_cert_url' => env('GOOGLE_CLOUD_MEDIA_CLIENT_CERT_URL'),
],
'throw' => true,
],
Я уже обновил свой файл .env, APP_URL, и, похоже, это правильно, потому что мне удалось загрузить файл в свой GCP и я могу видеть изображения при использовании RichEditor. Я также пробовал обновить файл php.ini до:variable_order = GPCS, но ничего не помогло. Я уже добавил это: ->fetchFileInformation(false), и это все то же самое. Может ли кто-нибудь помочь мне в этом? Спасибо.
Это исправлено на стороне сервера. CORS не включен. Все, что вам нужно сделать, это разрешить доступ из источника.