Scala alpaakka s3与DO Spaces连接多部分上载结果403
我正在尝试设置akka http文件上载到Digital Ocean Spaces。我有多部分上传的问题。我使用alpaakka将文件直接流式传输到s3。但是我在上传时收到403个错误签名。 但如果我试着用简单的一部分上传同一个文件,一切都很好Scala alpaakka s3与DO Spaces连接多部分上载结果403,scala,digital-ocean,akka-http,alpakka,Scala,Digital Ocean,Akka Http,Alpakka,我正在尝试设置akka http文件上载到Digital Ocean Spaces。我有多部分上传的问题。我使用alpaakka将文件直接流式传输到s3。但是我在上传时收到403个错误签名。 但如果我试着用简单的一部分上传同一个文件,一切都很好 s3Client.putObject(collection, key, file, 1, s3Headers = S3Headers(Seq())) //works fine file.runWith(s3Client.multipartUpload
s3Client.putObject(collection, key, file, 1, s3Headers = S3Headers(Seq())) //works fine
file.runWith(s3Client.multipartUpload(collection, key)) // gets 403 and throws No Etag exists in response
多部分上传成功启动请求,签名有效,但当它尝试实际上传部分时,我得到403
有人试过吗?我更改了不同的设置,如何设置客户端(使用代理,使用端点),但结果仍然相同
//with Proxy
val proxy = Option(Proxy(url, port, "https"))
val settings = new S3Settings(MemoryBufferType, proxy, awsCredentialsProvider, regionProvider, true, None)//Some(s"https://$url")
val s3Client = new S3Client(settings)(system, materializer)
//without
val proxy = Option(Proxy(url, port, "https"))
val settings = new S3Settings(MemoryBufferType, None, awsCredentialsProvider, regionProvider, true, Some($url))
val s3Client = new S3Client(settings)(system, materializer)
谢谢你的帮助