2008-11-14 18 views
1

Nous construisons une application qui stocke des données dans un compartiment S3. Cependant, nous avons des problèmes avec la méthode PutObject. Voici le paquet xml nous envoyons:Besoin d'aide pour diagnostiquer un problème de paquet SOAP avec Amazon S3

<?xml version="1.0" encoding="utf-8"?> 
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
    <soap:Body> 
     <PutObject xmlns="http://doc.s3.amazonaws.com/2006-03-01"> 
     <Bucket>lills</Bucket> 
     <Key>lills123</Key> 
     <Metadata> 
      <Name>Content-Type</Name> 
      <Value>text/plain</Value> 
     </Metadata> 
     <Metadata> 
      <Name>title</Name> 
      <Value>lills</Value> 
     </Metadata> 
     <Data>aGEtaGE=</Data> 
     <ContentLength>5</ContentLength> 
     <AWSAccessKeyId>key</AWSAccessKeyId> 
     <Timestamp>2008-11-12T06:23:17Z</Timestamp> 
     <Signature>signature</Signature> 
     </PutObject> 
    </soap:Body> 
</soap:Envelope> 

Et voici la réponse que nous récupérons de S3:

<?xml version="1.0" encoding="utf-8"?> 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <soapenv:Body> 
     <soapenv:Fault> 
     <faultcode>soapenv:Client.badRequest</faultcode> 
     <faultstring>Malformed request</faultstring> 
     <detail/> 
     </soapenv:Fault> 
    </soapenv:Body> 
</soapenv:Envelope> 

Quelqu'un peut-il me dire quel est le problème avec le paquet SOAP est?

Merci à l'avance, Devan

Répondre

2

Si vous voulez envoyer les données dans le message SOAP lui-même, vous devez utiliser PutObjectInline, et non PutObject (qui attend les données à une pièce jointe DIME).

voir PutObjectInline dans les documents s3.

Questions connexes