对于本地环境,我使用的是fakes3的改进版本(某些ruby实现)。
在java中我有这段代码:
private final AmazonS3Client client;
private final S3Configuration configuration;
private final ObjectMapper objectMapper = new ObjectMapper();
// code code...
final byte[] bytes = objectMapper.writeValueAsBytes(object);
final InputStream input = new ByteArrayInputStream(bytes);
final ObjectMetadata metadata = createJsonMetadata();
metadata.setContentLength(bytes.length);
client.putObject(getBucket(), key, input, metadata);
我想要做的是使用这个fakes3(并且它可以工作),但方法putObject
看起来需要3秒才能执行,这对我们的开发环境来说真的很烦人。
我该如何解决这个问题?
答案 0 :(得分:0)
我自己找到了答案......
亚马逊客户端在标头中添加了一些Expect: 100-continue
,根据rfc2616,客户端正在等待服务器的响应继续进行正文。
大多数服务器都没有实现这一点......我在提交my fork of FakeS3中的54876321f62ebb26d17cd731401784917e52d50d中解决了这个问题