AmazonS3, wie um zu prüfen, ob der upload gelungen?
Schrieb ich einen kurzen test-code in Java, um eine PDF-Datei hochladen im Arbeitsspeicher generiert. In diesem test-code, den ich nur mit einem dummy-byte-array, aber in der realen Benutzung lege ich eine PDF-Datei (max 2-3 Seiten) in das byte-array. Alles funktioniert: die Datei wird hochgeladen und die Berechtigungen festgelegt.
Allerdings hab ich da ein PutObjectResult zurück, ich Frage mich, wie soll ich es prüfen. Oder ist es genug, um sich für die Ausnahmen AmazonClientException und AmazonServiceException?
In anderen Worten: , Wie Sie überprüfen, dass der upload geglückt und nicht korrupten meine Daten?
String bucket = "mybucket.example.com";
String fileName = "2011/test/test.pdf";
AmazonS3 client = new AmazonS3Client(new BasicAWSCredentials(
"accessKey", "secretKey"));
byte[] contents = new byte[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 };
InputStream stream = new ByteArrayInputStream(contents);
ObjectMetadata meta = new ObjectMetadata();
meta.setContentLength(contents.length);
meta.setContentType("application/pdf");
PutObjectResult res = client.putObject(bucket, fileName, stream, meta);
client.setObjectAcl(bucket, fileName, CannedAccessControlList.PublicRead);
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe mir den source-code von AWS und debuggt er und entdeckte Folgendes:
In anderen Worten, die Beantwortung meiner eigenen Frage, es ist genug, um zu hören, für die Ausnahmen, weil auch die MD5 der hochgeladenen Daten überprüft, so dass, wenn es eine Korruption eine Ausnahme ausgelöst werden würde.
AmazonClientException und AmazonServiceException sind ungeprüfte Ausnahmen, so ist es wichtig daran zu erinnern, zu hören, da der compiler nicht die Kraft zu.