【问题标题】:Images from S3 not loading, 403 Forbidden来自 S3 的图像未加载,403 Forbidden
【发布时间】:2021-07-23 06:45:24
【问题描述】:

我有一个简单的应用程序,它应该显示托管在 S3 上的图像。图像在浏览器中加载良好: https://s3.amazonaws.com/mlsgrid/images/a54e5e4c-e205-4b98-9ee7-4746b75d0a61.jpg

但是当嵌入 html 标签时,我得到 403 禁止:

我尝试添加 CORS,但仍然无法正常工作。我需要做什么才能显示此图片?

    services.AddCors(options =>
    {
        options.AddDefaultPolicy(
            builder =>
            {
                builder.AllowAnyHeader().AllowAnyOrigin()
                    .AllowAnyMethod().SetIsOriginAllowedToAllowWildcardSubdomains();
            });
    });

【问题讨论】:

  • 为什么你认为它是 CORS?如果是,控制台选项卡将显示错误。例如。 Cross-Origin Request Blocked: REASON.
  • 图像通常不会被 CORS 屏蔽。
  • 注意类型被列为 xml,而不是图像。您可能需要更正 s3 中的对象元数据。
  • 图片是base64字符串吗?

标签: c# amazon-web-services asp.net-core amazon-s3


【解决方案1】:

我确实像这样在前端修复了它:

           <meta name="referrer" content="same-origin" />
            <img
                alt={imageList[activeStep]?.label || 'Image not found'}
                className={classes.img}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-12
    • 2021-11-03
    • 2016-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-16
    相关资源
    最近更新 更多