2017-01-23 53 views
1

使用CLI我可以發送--query自上次更改只返回對象AWS:S3 putCustomQueryParameter由LastModified返回?

aws s3api list-objects --profile <profile> --bucket <bucket> --query 'Contents[?LastModified>=`2017-01-19`][]' 

偉大的作品,只返回一個對象>=的日期。

我想這個像這樣的東西轉換爲Java SDK的:

ListObjectsV2Request req = new ListObjectsV2Request(); 
req.putCustomQueryParameter("LastModified>=`2017-01-19`", null); 

我已經嘗試了大量的兩個查詢和參數字符串的變化沒有任何luck-查詢總是返回所有對象。所以有兩個問題:

  1. 應該這樣工作嗎?那是什麼putCustomQueryParameter 應該做的?
  2. 什麼是正確的語法,如果答案#1「是」?

在此先感謝。

回答

1

這不可能像你想象的那樣。

該cli實際上列出了全部對象並在本地進行過濾。 API(這是cli,SDK和控制檯都使用的)不支持這樣的查詢。

+0

感謝您的確認。用'--debug'運行cli並觀看GET請求/響應後,這是我的懷疑。 –