FIlament PHP |文件上传问题 |等待尺寸| GCP

问题描述 投票:0回答:1

我需要您使用 GCP 进行文件上传方面的帮助。我有两种上传图片的方式:

  1. 使用 RichEditor:这个效果非常好。基本上,当我上传图像时,我可以毫无问题地看到它们。
  2. 使用FileUpload:这是我遇到问题的地方。我能够上传它并且可以打开该文件;然而,预览继续加载并告诉我永远“等待大小”。

这是我的资源代码:

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 文件更新为:variables_order = GPCS 但没有任何效果。我已经添加了这个:->fetchFileInformation(false),它仍然是相同的。谁能帮我解决这个问题。谢谢你。

php google-cloud-platform file-upload laravel-filament
1个回答
0
投票

这已在服务器端修复。 CORS 未启用。您需要做的就是允许从源访问。

© www.soinside.com 2019 - 2024. All rights reserved.