Je ne peux pas vraiment répondre à cette question dans le contexte de PHP ou Guzzle, mais je peux fournir quelques informations sur le Cloud Files et quelques exemples curl ligne de commande qui pourrait aider.
Rackspace Cloud Files n'a pas vraiment le concept de "dossiers" à l'intérieur des conteneurs. Vous avez une URL avec les pièces suivantes: https: // {storage_endpoint}/{account_name}/{container_name}/{} nom_objet
Vous pouvez cependant imiter les dossiers en créant des objets avec le caractère "/" dans le nom . Ensuite, lors de l'exécution d'une liste de conteneurs, vous pouvez définir les paramètres de chaîne de requête "préfixe" et "délimiteur" pour émuler un comportement de type dossier.
Par exemple, supposons que vous faites une liste de votre conteneur pour voir tous vos objets:
$ curl -i -XGET -H"x-auth-token: $AUTH_TOKEN" https://storage101.iad3.clouddrive.com/v1/$ACCOUNT_NAME/$CONTAINER_NAME
HTTP/1.1 200 OK
...
Date: Thu, 01 Dec 2016 02:16:53 GMT
foo/file1.txt
foo/bar/file2.txt
baz/file3.txt
baz/file4.txt
Nous avons ici quatre objets nommés "foo/file1.txt", « foo/bar/file2.txt "," baz/fichier3.txt "et" baz/fichier4.txt ".
La meilleure façon de vérifier l'existence du dossier « foo » serait de définir le préfixe « foo/» et le séparateur à «/» comme suit:
$ curl -i -XGET -H"x-auth-token: $AUTH_TOKEN" https://storage101.iad3.clouddrive.com/v1/$ACCOUNT_NAME/$CONTAINER_NAME?prefix=foo/&delimiter=/
HTTP/1.1 200 OK
...
Date: Thu, 01 Dec 2016 02:16:45 GMT
foo/file1.txt
foo/bar/file2.txt
Comme vous pouvez le voir , si des objets existent avec ce préfixe, un HTTP 200 est renvoyé avec une liste des objets correspondant au préfixe. Si aucun objet n'existe avec ce préfixe, le "dossier" n'existe pas et un HTTP 204 sera retourné. Si vous voulez maintenant tester un "sous-dossier" dans "foo", vous pouvez simplement effectuer une autre liste de conteneurs en changeant le préfixe "foo/bar /" et en gardant le délimiteur de "/". De plus, si vous voulez créer un dossier "images" et qu'il contienne "cat.jpg", vous n'avez pas besoin de créer d'abord un dossier, il vous suffit de créer un objet appelé "images/cat.jpg" qui contient les données pour cat.jpg.
Vous pouvez trouver plus d'informations sur Rackspace cloud fichiers et dossiers pseudo-hiérarchique ici: https://developer.rackspace.com/docs/cloud-files/v1/general-api-info/pseudo-hierarchical-folders-and-directories/
merci, ça m'a beaucoup aidé .. –