2016-10-26 5 views
0

URL로 java sdk를 사용하여 AWS S3에서 리소스를 삭제하는 방법이 있습니까?리소스 URL - Java SDK가 포함 된 AWS S3 리소스 삭제

s3client.deleteObject(new DeleteObjectRequest(bucketName, keyName)); 

문제는 내가 단지 resourceURL에 액세스 할 수있는, 그래서 나는를 추출하기 위해 문자열을 조작 할 필요가 있다는 것입니다 :

나는이 같은 버킷 이름과 키 이름을 사용하여 리소스를 삭제할 수 있습니다 알고 버킷 이름 및 키 이름.

그러나 URL을 전달하여 삭제하는 방법이 있다면 훨씬 더 깨끗합니다.

답변

2

단순히 URL을 전달하는 방법이없는 것처럼 보입니다.

하지만이있다 :

AmazonS3URI에게

public AmazonS3URI(String str)

지정된 캐릭터 라인을 해석해 새로운 AmazonS3URI를 작성합니다. 문자열은 URI를 생성하기 전에 URL로 인코딩됩니다.

http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/AmazonS3URI.html

당신은 당신이 필요로하는 문자열을 추출하는 데에 getKeygetBucket를 호출 할 수 있습니다. 여전히 지저분하지만 최소한 파서를 직접 작성하지 않아도되는 것처럼 보입니다.

+0

완벽하게 작동했습니다. 미래에 이것을 읽는 다른 누군가를 위해서. URL을 사용하여 다음과 같은 개체를 삭제했습니다. AmazonS3URI as3uri = 새 AmazonS3URI (* URL to OBJECT *); s3Client.deleteObject (as3uri.getBucket(), as3uri.getKey()); – Megadec

+0

javascript에서 동일한 작업을 수행하는 방법에 대한 정보가 있습니까? – Juan