Is the explanation "Non-printable ASCII characters (128–255 decimal characters)" correct in S3 docs?

0

Hi,

I'm reading a document(link) about "Characters to avoid" for S3 key names. In the section, the document explicitly points out that Non-printable ASCII characters are 128-255 decimal characters. However, when I google "Non-printable ASCII characters", other sites mostly explain that non-printable ASCII characters are control characters ranging from 00 to 31, plus 127. The discrepancy is quite confusing.

Does it still mean that I should avoid using Extended ASCII 128-255 in S3 key names? If so, maybe they should substitute the phrase "Non-printable ASCII characters" with "Extended ASCII characters" in the doc?

1 Answer
0

Hi,

The document that you point to is very clear:

You can use any UTF-8 character in an object key name. However, using certain characters 
in key names can cause problems with some applications and protocols. The following guidelines 
help you maximize compliance with DNS, web-safe characters, XML parsers, and other APIs.

S3 allows any UTF-8 char (even non-printable) in object key. The recommendations in this doc are more when use S3 content in a web browser: "weird" chars in object keys may create lots of issues in browsers and other app expecting URLs with only printable chars.

So, it's fine to use any char for machine-to machine apps. But, it gets rapidly problematic when browsers or similar apps get involved.

Best,

Didier

profile pictureAWS
EXPERT
answered 4 months ago
  • Thank you for the answer. However I still can't fully comprehend what "Non-printable ASCII characters" is from the document. Is it actually referring to Extended ASCII 128-255?

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions