我正在尝试使用URLFetchService从Google App Engine(使用Java)将文件上传到Amazon S3,但我没有走得太远。首先,我从未做过任何REST编程,也没有GAE。
我查看了S3的文档,并提出了以下代码。我是沿着正确的道路前进的吗?
final URLFetchService urlFetchService = URLFetchServiceFactory.getURLFetchService();
final URL url = new URL("http", AWS_BUCKET+".s3.amazonaws.com/myFile.jpg", "");
final HTTPRequest request = new HTTPRequest(url, HTTPMethod.PUT, followRedirects());
request.addHeader(new HTTPHeader("Content-Type", contentType));
request.addHeader(new HTTPHeader("Content-Length", Integer.toString(pictureBytes.length)));
request.addHeader(new HTTPHeader("Expect", "100-continue"));
request.addHeader(new HTTPHeader("Authorization", "AWS "+AWS_ACCESS_KEY+":"+AWS_SECRET_KEY));
request.setPayload(pictureBytes);
urlFetchService.fetch(request);
当我运行上面的代码时,我得到Entity enclosing requests cannot be redirected without user intervention
作为错误消息。
提前感谢任何提示/提示/指针/网址/解决方案:)
干杯
富
答案 0 :(得分:0)
好的,毕竟,亚马逊自己的示例代码工作得很好!
由于GAE / J运行的沙箱,我没想到亚马逊代码能够正常运行,但我应该先测试它。