2016-10-26 33 views
0

URLでjava sdkを使用してAWS S3からリソースを削除する方法はありますか?リソースURLを使用したAWS S3リソースの削除 - Java SDK

私はあなたがこのようにバケット名とキー名使用してリソースを削除することができます知っている:

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

関連する問題