當前,如果GetObjectMetaDataResponse
引發異常,則表示該對象不存在,則我製作一個GetObjectMetaDataRequest
。有沒有更好的方法來檢查文件是否存在而不下載文件。檢查S3對象是否存在的最佳方法是什麼?
5
A
回答
-1
是的。
您可以使用ListObjectsRequest。使用標記屬性,並只檢索1個元素。
1
沒有ListObjectRequest,而是一個ListObjectsRequest,您無法指定Key。然後,你必須通過所有的對象來找到你想要的。我目前正在尋找它,因爲我似乎在下載文件時出錯。 (如果有人有一些想法如何解決,可隨時發表評論)。
如果您碰巧知道上傳ID,則可以嘗試使用列表部件請求。
除此之外,我不知道。想與S3 api寫個人聊天...
5
你可以使用S3FileInfo類和這個類的Exists方法它會幫助你檢查文件是否存在,而不下載文件。例如下面的例子我使用了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;
}
}
2
試試這個解決方案,它適用於我。
AmazonS3Client client = new AmazonS3Client(accessKey, secretKey, regionEndpoint);
S3FileInfo s3FileInfo = new S3FileInfo(client, bucketName, fileName);
if (s3FileInfo.Exists)
return true;
else
return false;
0
你可能不得不使用REST API自己,作爲方法的建議,只是內部不完全一樣的東西(的try ... catch關於請求)
相關問題
- 1. 什麼是檢查PDO是否存在的最佳方法
- 2. 檢查PowerShell對象是否存在的最佳方法?
- 3. 檢查對象屬性是否爲空的最佳方法是什麼?
- 4. 輪詢新S3對象的最佳方法是什麼?
- 5. 檢查視窗是否可見的最佳方法是什麼?
- 6. 檢查FileInputStream是否關閉的最佳方法是什麼?
- 7. 檢查屬性是否存在並設置的最佳方法是什麼?
- 8. 檢查另一個字符串是否存在的最佳方法是什麼?
- 9. LINQtoSQL:檢查插入行是否存在的最佳方法是什麼?
- 10. 檢查數據是否存在於Django中的最佳方法是什麼?
- 11. 檢查javascript中是否存在子節點的最佳方法是什麼?
- 12. 檢查網站文件夾是否存在的最佳方法是什麼?
- 13. 檢查對象是否被更改的最佳做法是什麼?
- 14. 檢查實體框架中是否存在對象的最佳方法是什麼?
- 15. 在Rails/Ruby中檢查對象是否存在的正確方法是什麼?
- 16. 檢查對象是否存在的最快方法
- 17. 檢測存儲在Java對象中的原語的最佳方法是什麼?
- 18. 檢查r中對應關係的最佳方法是什麼
- 19. 在Immutable.js對象中檢查深層值的最佳方法是什麼?
- 20. 檢測IDataReader是否爲空的最佳方法是什麼?
- 21. 什麼是檢查時間是否在一定時間內的最佳方法?
- 22. 什麼是檢查IQueryable結果集的最佳方法是空
- 23. 檢查DataReader中是否存在列的最佳方法
- 24. 檢查電子郵件是否存在的最佳方法
- 25. 檢查Javascript中是否存在變量的最佳方法?
- 26. 什麼是檢查MySQL中行存在的最佳方式
- 27. 檢測對象是否保存在javafx桌面應用程序中的最佳方法是什麼?
- 28. 在Memcached中存儲ActiveRecord對象的最佳方式是什麼?
- 29. 在redis中存儲對象的最佳方式是什麼?
- 30. 從響應中檢查並分配給對象的最佳方法是什麼?
這是一個錯字。我更新了我的答案,以更詳細地說明如何實現它。 – 2016-02-18 21:10:02