我正在尝试使用 AWS SDK PHP 生成的预签名帖子将文件(用于测试的图像)上传到我的 s3 存储桶。首先我生成预签名的帖子,然后我使用 Postman 或通过简单的 html 表单使用给定的 PostObjectV4 数据手动创建请求...填写完所有内容后,请求结果为“访问被拒绝”:-(。与客户端关联的用户生成 PostObjectV4 在相应的存储桶上已允许 s3:PutObject 策略。
我已经尝试过:
预签名后生成的 PHP 代码(数据位于 $postObject 中):
$assetAwsS3Key = $this->getAssetAwsS3Key($asset);
$options = [
['starts-with', '$key', 'myDir/'],
];
// Optional: configure expiration time string
$expires = '+24 hours';
// Set some defaults for form input fields
$formInputs = ['acl' => 'private'];
$postObject = new PostObjectV4(
$this->buildAwsS3UserClient(),
$this->awsBucketName,
$formInputs,
$options,
$expires
);
// Get attributes to set on an HTML form, e.g., action, method, …Run Code Online (Sandbox Code Playgroud)