【问题标题】:Amazon S3 bucket file upload : Invalid Transfer encoding headerAmazon S3 存储桶文件上传:传输编码标头无效
【发布时间】:2017-03-25 18:27:04
【问题描述】:

我正在尝试按照this 示例将文件上传到 S3 存储桶。我创建了一个 shell 脚本并更改了参数值,当我尝试执行它时,返回以下错误消息:

<Error><Code>NotImplemented</Code>
<Message>A header you provided implies functionality that is not implemented</Message>
<Header>Transfer-Encoding</Header>

从文档看来,curl 在无法确定内容长度时会添加此标头。我不知道是否可以将 curl 配置更改为跳过包含传输编码标头,但尝试了以下方法:

  • 将内容类型更改为多部分
  • 包含的内容长度标头
  • 删除了内容类型标题

我仍然遇到同样的错误。我是否需要更改其他任何内容才能使其正常工作?

【问题讨论】:

  • 你能在执行之前echo整个 curl 命令和参数吗?
  • @helloV 你不知道这条评论对我有多大帮助。我添加了 echo 并发现我没有传递所有参数(缺少文件名)。感谢您的帮助,如果您将其发布为答案,我会接受它作为正确答案:)
  • 现在作为答案发布:-)

标签: php amazon-web-services curl amazon-s3


【解决方案1】:

来自NotImplemented ,您可能没有传递文件名或Body 是一个空字符串。

你能在执行之前回显整个curl 命令和参数吗?

【讨论】:

  • 文件名是一个空字符串,因此 curl 不包括内容长度,而是添加了传输编码。
【解决方案2】:

这个错误可能会发生,当我们弄乱了参数的格式时,当我没有在节点 js 中对我的 JSON 正文进行字符串化时,我得到了同样的错误。

【讨论】:

    猜你喜欢
    • 2018-04-12
    • 2018-04-04
    • 2014-11-11
    • 1970-01-01
    • 1970-01-01
    • 2013-06-25
    • 2015-05-05
    • 2023-04-05
    • 2019-10-14
    相关资源
    最近更新 更多