Actualmente, hago un GetObjectMetaDataRequest
, si el GetObjectMetaDataResponse
lanza una excepción significa que el objeto no existe. ¿Hay una mejor manera de verificar si el archivo existe sin descargar el archivo?¿cuál es la mejor manera de verificar si existe un objeto S3?
Respuesta
Sí.
Puede usar un ListObjectsRequest. Use la propiedad Marker y recupere solo 1 elemento.
No hay ListObjectRequest, sino un ListObjectsRequest donde no puede especificar la clave. Luego debe examinar todos los objetos para encontrar el que desea. Actualmente estoy buscando, ya que parece que tengo errores de tiempo de espera mientras descargo el archivo. (Si alguien tiene alguna idea de cómo resolverlo, no dude en comentar).
En su lugar, puede probar la Solicitud de lista de piezas si conoce la Id. De carga.
Aparte de eso, no tengo ni idea. Quisiera tener un chat con la persona que escribió la API S3 ...
puede utilizar la clase S3FileInfo y existe el método de esta clase que le ayudará a verificar si el archivo existe sin descargar el archivo. Vea el ejemplo a continuación Utilicé el AWSSDK 3.1.6 .net (3.5):
public static bool ExistsFile()
{
BasicAWSCredentials basicCredentials = new BasicAWSCredentials("my access key", "my secretkey");
AmazonS3Config configurationClient = new AmazonS3Config();
configurationClient.RegionEndpoint = RegionEndpoint.EUCentral1;
try
{
using (AmazonS3Client clientConnection = new AmazonS3Client(basicCredentials, configurationClient))
{
S3FileInfo file = new S3FileInfo(clientConnection, "mybucket", "FolderNameUniTest680/FileNameUnitTest680");
return file.Exists;//if the file exists return true, in other case false
}
}
catch(Exception ex)
{
return false;
}
}
Pruebe esta solución, funciona para mí.
AmazonS3Client client = new AmazonS3Client(accessKey, secretKey, regionEndpoint);
S3FileInfo s3FileInfo = new S3FileInfo(client, bucketName, fileName);
if (s3FileInfo.Exists)
return true;
else
return false;
usted está probablemente va a tener que utilizar la API REST a sí mismo, ya que el método sugerido, internamente solo hace exactamente lo mismo (try ... catch en la solicitud)
- 1. ¿La mejor manera de verificar si existe un objeto PowerShell?
- 2. ¿Cuál es la mejor manera de verificar si un archivo existe en C++? (plataforma cruzada)
- 3. ¿Cuál es la mejor manera de verificar si una cadena existe en otra?
- 4. ¿Cuál es la mejor manera de verificar si existe una URL en PHP?
- 5. Entonces, ¿cuál es la mejor manera de verificar si existe una fila? EXISTS, COUNT o num_rows?
- 6. ¿La mejor manera de verificar si el objeto existe en Entity Framework?
- 7. ¿Cuál es la mejor manera de verificar si hay un objeto nulo antes de llamar a un método?
- 8. ¿Cuál es la mejor manera de verificar si el artículo existe o no ?: Seleccione Recuento (ID) O ¿Existe (...)?
- 9. C manera más rápida de verificar si existe un directorio
- 10. ¿La mejor manera de verificar si una variable es nula?
- 11. ¿Cuál es la mejor manera de detectar si un objeto Javascript dado es un elemento DOM?
- 12. ¿Cuál es la mejor manera de verificar si un objeto es una matriz o no en Javascript?
- 13. ¿Cuál es la mejor manera de verificar si la vista es visible en la ventana?
- 14. Python es la mejor manera de verificar si existe una clave
- 15. La forma más rápida de verificar si existe un objeto
- 16. ¿Cuál es la mejor práctica para verificar si se cambia un objeto?
- 17. ¿Cuál es una mejor manera de verificar si una cadena es un número entero en iPhone?
- 18. ¿cuál es la mejor manera de verificar una matriz vacía?
- 19. Ver si existe un objeto en S3 usando PHP
- 20. ¿Manera pitónica de verificar si existe un archivo?
- 21. manera pitonica para verificar si algo existe?
- 22. ¿Cuál es la mejor manera de verificar si hay fugas de memoria en C++?
- 23. ¿Cuál es la mejor manera de verificar si una cadena contiene una URL en Java/Android?
- 24. ¿Cuál es la mejor manera de verificar si el usuario puede cargar archivos?
- 25. C# en VS2005: ¿cuál es la mejor manera de verificar si una cadena está vacía?
- 26. Persistencia del objeto Delphi, ¿cuál es la mejor manera?
- 27. JS ¿Hay alguna manera de verificar si existe un evento?
- 28. ¿Cuál es la mejor manera de determinar si existe una tabla temporal en SQL Server?
- 29. ¿Cuál es la forma pitónica de verificar si un objeto es una lista?
- 30. ¿Cuál es una buena manera de verificar si un doble es un número entero en C#?
Eso es un error tipográfico. Actualicé mi respuesta también para dar un poco más de detalles sobre cómo lograrlo. –