使用OkHttp或Retrofit将文件上载到AWS S3存储桶

War*_*lva 7 android amazon-s3 retrofit okhttp

是否有使用Square的OkHttp库或Retrofit库将文件上传到S3存储桶的示例?我正在寻找一些示例,我可以使用预先签名的查询使用这些库上传文件.

Abu*_*sar 0

我或多或少地从一些预生产代码中复制了这个:

OkHttpClient.Builder builder = new OkHttpClient.Builder().proxy(proxy).writeTimeout(10, TimeUnit.MINUTES);
this.client = builder.build();
// ...
Request.Builder requestBuilder = new Request.Builder().url(uploadUrl);
for (TagEntry entry : item.getUploadUrlHeaders()) {
    requestBuilder.addHeader(entry.getKey(), entry.getValue());
}

RequestBody requestBody = RequestBody.create(BINARY_MEDIA_TYPE, file.toFile());
requestBuilder.put(requestBody);
final Response response = client.newCall(requestBuilder.build()).execute();
assert response.isSuccessful();
Run Code Online (Sandbox Code Playgroud)