Adds a set of tags to an existing S3 object. This example adds tags to the object named "starfish.jpg" located in the bucket "chilkat100".
curl -X PUT https://chilkat100.s3.amazonaws.com/starfish.jpg?tagging \
-d '<Tagging>
<TagSet>
<Tag>
<Key>animal</Key>
<Value>starfish</Value>
</Tag>
</TagSet>
</Tagging>'
require 'chilkat'
rest = Chilkat::CkRest.new()
authAws = Chilkat::CkAuthAws.new()
authAws.put_AccessKey("AWS_ACCESS_KEY")
authAws.put_SecretKey("AWS_SECRET_KEY")
authAws.put_Region("us-east-1")
authAws.put_ServiceName("s3")
rest.SetAuthAws(authAws)
# URL: https://chilkat100.s3.amazonaws.com/starfish.jpg?tagging
bTls = true
port = 443
bAutoReconnect = true
success = rest.Connect("chilkat100.s3.amazonaws.com",port,bTls,bAutoReconnect)
if (success != true)
print "ConnectFailReason: " + rest.get_ConnectFailReason().to_s() + "\n";
print rest.lastErrorText() + "\n";
exit
end
# See the Online Tool for Generating XML Creation Code
xml = Chilkat::CkXml.new()
xml.put_Tag("Tagging")
xml.UpdateChildContent("TagSet|Tag|Key","animal")
xml.UpdateChildContent("TagSet|Tag|Value","starfish")
sbRequestBody = Chilkat::CkStringBuilder.new()
xml.GetXmlSb(sbRequestBody)
sbResponseBody = Chilkat::CkStringBuilder.new()
success = rest.FullRequestSb("PUT","/starfish.jpg?tagging",sbRequestBody,sbResponseBody)
if (success != true)
print rest.lastErrorText() + "\n";
exit
end
respStatusCode = rest.get_ResponseStatusCode()
if (respStatusCode >= 400)
print "Response Status Code = " + respStatusCode.to_s() + "\n";
print "Response Header:" + "\n";
print rest.responseHeader() + "\n";
print "Response Body:" + "\n";
print sbResponseBody.getAsString() + "\n";
exit
end