Rework object attribute setting with headers #122

Open
opened 2024-06-26 11:17:51 +00:00 by alexvanin · 0 comments
Owner

FrostFS Object Attributes are case sensitive key-value pairs. HTTP Gateway reads object attributes from HTTP headers of PUT request. To do this task correctly, gateway disables header normalization.

According to RFC7540#8.1.2

header field names MUST be converted to lowercase prior to their encoding in HTTP/2.

Any HTTP/2 proxy changes request headers, so gateway can't parse object attributes. Gateway also can't parse other useful headers like Authorization, but this is fixed in #121

FrostFS Object Attributes are case sensitive key-value pairs. HTTP Gateway reads object attributes from HTTP headers of PUT request. To do this task correctly, gateway [disables](https://git.frostfs.info/TrueCloudLab/frostfs-http-gw/src/commit/1737f1d95fdc918ef1d7c8a91075fa9f978c37f6/cmd/http-gw/app.go#L137) header normalization. According to [RFC7540#8.1.2](https://www.rfc-editor.org/rfc/rfc7540#section-8.1.2) > header field names MUST be converted to lowercase prior to their encoding in HTTP/2. Any HTTP/2 proxy changes request headers, so gateway can't parse object attributes. Gateway also can't parse other useful headers like `Authorization`, but this is fixed in https://git.frostfs.info/TrueCloudLab/frostfs-http-gw/pulls/121
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: TrueCloudLab/frostfs-http-gw#122
No description provided.