首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >x-amz-content-sha256必须是无符号的有效负载、流-aws4-hma-sha 256有效负载或有效sha256值。

x-amz-content-sha256必须是无符号的有效负载、流-aws4-hma-sha 256有效负载或有效sha256值。
EN

Stack Overflow用户
提问于 2018-10-15 15:21:44
回答 2查看 6.6K关注 0票数 2

我正试图通过多格式的aws4请求将图像发送到aws后端。我在用邮递员。下面是错误输出。

代码语言:javascript
运行
复制
<?xml version="1.0" encoding="UTF-8"?>
  <Error>
    <Code>InvalidArgument</Code>
    <Message>x-amz-content-sha256 must be UNSIGNED-PAYLOAD, STREAMING-AWS4-HMAC-SHA256-PAYLOAD, or a valid sha256 value.</Message>
    <ArgumentName>x-amz-content-sha256</ArgumentName>
    <ArgumentValue>null</ArgumentValue>
    <RequestId>7D78494C962E781C</RequestId>
    <HostId>RLuxhuFW89Qfyspp8BCX4IaoQRqAx8yCk7OTeprRwlqH5OurASuqPNU7WbFcZPItXPcHk/8XBgw=</HostId>
  </Error>

下面是我得到的SubmitTo数据

代码语言:javascript
运行
复制
"submitTo": {
        "url": "https://optelos-quadro.s3.amazonaws.com",
        "method": "POST",
        "contentType": "multipart/form-data",
        "formData": {
            "key": "Redacted",
            "content-type": "image/jpeg",
            "content-disposition": "inline; filename=file1.JPG",
            "x-amz-credential": "Redacted/20181015/us-west-2/s3/aws4_request",
            "x-amz-algorithm": "AWS4-HMAC-SHA256",
            "x-amz-date": "20181015T000000Z",
            "policy": "eyJleHBpcmF0aW9uIjoiMjAxOC0xMC0xNlQxNDozOTowMC4wMTBaIiwiY29uZGl0aW9ucyI6W3siYnVja2V0Ijoib3B0ZWxvcy1xdWFkcm8ifSx7ImtleSI6IjViYWQxZmU0YTE0ZmUwMDEwMDhlM2EzNy93b3JrUGFja2FnZS81YmFlNTA5M2ExNGZlMDAxMDA4ZTQyNGMvZG9jdW1lbnQvNWJjNGE2ODM4ZWUwMGYwMTAwMDdlYmZlLzViYzRhNjgzOGVlMDBmMDEwMDA3ZWJmZS5KUEcifSx7IkNvbnRlbnQtVHlwZSI6ImltYWdlL2pwZWcifSx7IkNvbnRlbnQtRGlzcG9zaXRpb24iOiJpbmxpbmU7IGZpbGVuYW1lPWZpbGUxLkpQRyJ9LHsieC1hbXotY3JlZGVudGlhbCI6IkFLSUFKUElZUVRFTTIzNTM2Q1BRLzIwMTgxMDE1L3VzLXdlc3QtMi9zMy9hd3M0X3JlcXVlc3QifSx7IngtYW16LWFsZ29yaXRobSI6IkFXUzQtSE1BQy1TSEEyNTYifSx7IngtYW16LWRhdGUiOiIyMDE4MTAxNVQwMDAwMDBaIn1dfQ==",
            "x-amz-signature": "Redacted"
        }
    },

EN

回答 2

Stack Overflow用户

发布于 2022-06-21 23:07:06

在postman中使用put而不是post,并将文件的名称添加到url的末尾,如/foo.txt和s3之后的区域。之前,.amazonaws.com还删除授权中的区域。

示例:https://test.s3.us-east-1.amazonaws.com/test.csv

查看下面的链接以获得详细信息https://christinavhastenrath.medium.com/testing-file-uploads-to-aws-s3-with-iam-user-credentials-in-postman-5026fbde3ca6

票数 2
EN

Stack Overflow用户

发布于 2022-03-20 13:33:30

这是邮递员应用本身的问题,我刚刚用Node和x content-sha256头向AWS发送了http请求。

由于这个答案过于简单和简短,我将在这里添加工作的JS代码:

代码语言:javascript
运行
复制
import fs from 'fs/promises'
import FormData from 'form-data'
import fetch from 'node-fetch'

async function postToAWS() {
  const blob = fs.readFile('test.jpeg')
  const filename = 'test.jpeg'
  const bodyForm = new FormData()
  bodyForm.append('file', blob, filename)

  const response = await fetch('https://reddit-uploaded-media.s3-accelerate.amazonaws.com', {
    method: 'POST',
    body: bodyForm,
    headers: {
      'x-amz-content-sha256': ''
    }
  })
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52819940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档