2012-11-19 21 views
5

Mam mały program Java, który umożliwia użytkownikowi przesyłanie/pobieranie plików do/z Amazon S3. Mam przycisk "Anuluj" i chciałbym anulować przelew po naciśnięciu tego przycisku.Przerwanie przesyłania AWS S3

Wygląda na to, że istnieje metoda abort() podczas pobierania, która wydaje się działać, jednak nie jestem pewien, jak przerwać przesyłanie. Używam programu TransferManager do przesyłania plików. Próbowałem wywoływać transferManager.shutdownNow() wraz z transferManager.abortMultipartUploads(), jednak plik nadal pojawia się w konsoli zarządzania S3, tak jakby transfer nie został przerwany. czy robię coś źle?

Odpowiedz

-1

Zalecam, aby zachować kolejkę wszystkich żądań anulowania, a po zakończeniu przesyłania pliku do S3, należy wykonać akcję usuwania tego obiektu S3 i usunąć ten plik z kolejki anulowania. To może być najbardziej niezawodny sposób na "anulowanie" przesyłania.

1

W moim programie, wzywam transferManager.upload() sposób załadować PutObjectRequest obiekt, a następnie zwraca Upload obiekt, który zawiera abort() API. Dlatego po prostu zadzwonię pod numer upload.abort(), aby anulować przelew. Mam nadzieję, że to pomoże. :)

Powiązane problemy