Replies: 2 comments 2 replies
-
Have you disabled HTTP2 on your HTTPClient? Digital Ocean's HTTP2 implementation for their spaces is borked you have to force the HTTP client to be http1.1 only. See #608 Use AWSClient(
...
httpClient: HTTPClient(
eventLoopGroupProvider: .singleton,
configuration: .init(httpVersion: .http1Only)
)
) |
Beta Was this translation helpful? Give feedback.
-
Ah, thank you for that information. I had to create like this (there’s no var config = HTTPClient.Configuration()
config.httpVersion = .http1Only
let client = AWSClient(
credentialProvider: .static(accessKeyId: accessKey, secretAccessKey: secretKey),
httpClient: HTTPClient(eventLoopGroupProvider: .singleton, configuration: config),
logger: Logger(label: "S3Logger")
) The Acl request now returns. For completeness,
And seemingly exactly one minute later returns a result like:
Perhaps it's timing out, but I'd expect an error to be thrown in that case. Looking at the list of supported calls, I don't see that one in there, but maybe it has a different name? Is there a way to see the raw request and response (headers, and body if not too large)? |
Beta Was this translation helpful? Give feedback.
-
I'm using soto to communicate with Digital Ocean’s S3-compatible spaces. I'm able to upload files okay, but now I'm trying to call
getObjectAcl
, and I get "not implemented" errors. I find it next to impossible to figure out where in the code the actual response is coming from, so I can examine it for further information. If I install a debug logger on the request, I get this:However, if I use
s3cmd info
on the object, it comes back immediately with plenty of info:Digital Ocean claims to support GetObjectAcl: https://docs.digitalocean.com/products/spaces/reference/s3-compatibility/
Side note:
getObjectAttributes
takes 30 seconds to complete, and returns allnil
values.Beta Was this translation helpful? Give feedback.
All reactions