小编Gil*_*rtS的帖子

S3 使用 aws-sdk v3 为 PutObject 命令预签名 url 提供 SignatureDoesNotMatch 错误

我的 Amazon S3 存储桶工作正常,直到我决定将我的 aws sdk 从版本 v2 更新到模块化 v3。

我可以使用 sdk 以编程方式上传文件,但无法使用它生成的预签名 URL 上传文件。

      const { getSignedUrl } = require('@aws-sdk/s3-request-presigner');
      const { S3Client, , PutObjectCommand } = require('@aws-sdk/client-s3');
      const s3Client = S3Client({ region: 'us-east-2'});
      const params = {
        Bucket: '<bucket>',
        Key: '1234567890.jpg',
        ACL: 'private',
        ContentType: 'image/jpg',
        // Body: '<base64 encoded image content>'
      };
      const command = new PutObjectCommand(params);
      // await s3Client.send(command); // works fine
      const signedUrl = await getSignedUrl(s3Client, command); // generated signed url fails to upload image
Run Code Online (Sandbox Code Playgroud)

当我尝试使用生成的预签名 …

javascript amazon-s3 node.js aws-sdk aws-sdk-nodejs

5
推荐指数
0
解决办法
4408
查看次数

对象 obj = 真;但是 Java 说 obj 是布尔值

我试图了解一些关于 java 解释对象类型的方式。

这就是我的意思:

@Test
void checkObj() {
   // Output: INFO: Obj true is of type class java.lang.Boolean
   Object obj = true;
   log.info("Obj {} is of type {}", new Object[] {obj, obj.getClass()});
}
Run Code Online (Sandbox Code Playgroud)

obj已经被声明为 typeObject并且我们知道它true是 type Boolean,对吧?所以当我们赋值trueobj为什么会java告诉我们这obj是类型Boolean而不是告诉我们它是类型Object

我看了两者的源代码实现BooleanObjectObject不是接口并且Boolean不扩展或实现Object因此多态性是不可能的那么两者之间的链接在哪里?

的源代码是这样Boolean开始的:

public final class Boolean implements Serializable, Comparable<Boolean> { // ...
Run Code Online (Sandbox Code Playgroud)

的源代码是这样 …

java

1
推荐指数
1
解决办法
66
查看次数

标签 统计

amazon-s3 ×1

aws-sdk ×1

aws-sdk-nodejs ×1

java ×1

javascript ×1

node.js ×1