我正在尝试使用自定义元数据将对象上传到S3。如果我只使用ASCII它工作正常(我使用HttpUtility.HtmlEncode
来逃避一些特殊的符号)。
但是,如果我想发送带有法语符号的文本,我会得到S3异常(就像我使用未转义的特殊符号一样)
答案 0 :(得分:2)
使用REST API或AWS SDK时,不能将非ASCII字符用于S3用户定义的元数据(因为AWS SDK基本上是包装底层Amazon S3 REST API的包装库):
用户定义的元数据是一组键值对。亚马逊S3商店 用户定义的小写元数据键。每个键值对都必须 当你使用REST 时符合 US-ASCII,当你使用时符合UTF-8 通过POST使用SOAP或基于浏览器的上传。
虽然两者都支持UTF-8;使用POST,AWS recommends的SOAP和基于浏览器的上传,您使用REST API或AWS SDK表示SOAP不支持新功能:
不推荐使用HTTP上的SOAP支持,但它仍然可用 HTTPS。 SOAP不支持新的Amazon S3功能。我们 建议您使用REST API或AWS SDK。