J'essaie actuellement de développer une application pour télécharger des fichiers dans un compartiment Amazon S3 en utilisant cURL et C++. Après avoir lu attentivement le guide des développeurs S3 j'ai commencé à implémenter mon application en utilisant cURL et en formant l'en-tête comme décrit dans le guide des développeurs et après beaucoup d'essais et d'erreurs pour déterminer la meilleure façon de créer la signature S3 . L'en-tête reçu suggère que la méthode que j'utilise n'est pas implémentée. Je ne sais pas où je me trompe, mais voici l'en-tête HTTP que je vous envoie à amazon:Téléchargement vers Amazon S3 en utilisant cURL/libcurl
PUT /test1.txt HTTP/1.1
Accept: */*
Transfer-Encoding: chunked
Content-Type: text/plain
Content-Length: 29
Host: [BucketName].s3.amazonaws.com
Date: [Date]
Authorization: AWS [Access Key ID]:[Signature]
Expect: 100-continue
Je tronqué le nom Bucket, accès ID clé et de signature pour des raisons de sécurité.
Je ne suis pas sûr de ce que je fais mal mais je pense que l'erreur est générée en raison des champs Accept et Transfer-Encoding (pas vraiment sûr). Alors quelqu'un peut me dire ce que je fais mal ou pourquoi je reçois un 501.
Résolu: il manquait un CURLOPT pour la taille du fichier dans mon code et maintenant tout est fonctionne parfaitement –