aws -усилитель S3 Storage загружает файлы, но помещает их как «частные», несмотря на явную конфигурацию доступа c - PullRequest
0 голосов
/ 20 февраля 2020

Я пытаюсь загрузить файлы в AWS S3 Storage с доступом publi c, но, несмотря на явную настройку доступа publi c к коду, вместо этого файлы загружаются как частные. Я использую пакет aws -amplify в приложении Angular.

Это код, который я использую:

  public onSubmit() {
    this.form.disable();
    const contentType: string = this.imgFile.extension === 'png' ? 'image/png' : 'image/jpeg';
    // Image upload to AWS S3 storage.
    Storage.put(this.imgFile.name, this.imgFile.content, {
      progressCallback: (progress: any) => {
        console.log(`Uploaded: ${progress.loaded}/${progress.total}`);
      },
      contentType: contentType,
      ACL: 'public-read',
      visibility: 'public',
      level: 'public',
    }).then((result: any) => {
      this.img = S3_URL + replaceAll(result.key, ' ', '+');
      // GraphQL API mutation service.
      this.bannerService.createBanner(
        this.img,
        this.form.value.channel,
        this.form.value.trailer,
        this.backgroundColor,
        this.buttonColor,
        this.textColor,
      );
      // Re-enable the form.
      this.form.enable({
        onlySelf: true,
        emitEvent: true,
      });
      // Clean all form fields.
      this.formElement.nativeElement.reset();
    }).catch((err) => {
      console.log('error =>', err);
    });
  }

Есть идеи, почему S3 игнорирует доступ к publi c, который я указываю, и помещаю файлы как частные? Заранее спасибо!

1 Ответ

0 голосов
/ 21 февраля 2020

Проверьте настройки свойства вашего ковша; может быть, он настроен на блокировку публичного доступа c независимо от вашего разрешения. Также проверьте настройки своей учетной записи, которая не блокирует доступ publi c к S3 https://aws.amazon.com/s3/features/block-public-access/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...