我真的不能回答PHP或狂飲的背景下,這個問題,但我可以提供雲文件的一些信息和一些命令行卷曲的例子,可以幫助。
Rackspace的雲文件並沒有真正有「文件夾」內的容器的概念。您有以下幾部分的URL: 的https:// {storage_endpoint}/{ACCOUNT_NAME}/{CONTAINER_NAME}/{} OBJECT_NAME
但是,您可以通過在名稱創建一個與 「/」 字符的對象模仿文件夾。然後執行容器上市的時候,你可以設置「前綴」和「分隔符」查詢字符串參數來模擬一個類似文件夾的行爲。
例如,假設你做你的容器的列表,查看所有對象:
$ 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
在這裏,我們有一個名爲「富/ FILE1.TXT」四個對象,「富/酒吧/ FILE2.TXT 「,」baz/file3.txt「和」baz/file4.txt「。
測試文件夾「富」的存在,最簡單的方法是設置前綴爲「富/」和分隔符「/」如下:
$ 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
正如你所看到的,如果該前綴存在任何對象,則返回HTTP 200以及與該前綴匹配的對象列表。如果該前綴不存在對象,則「文件夾」不存在,並且將返回HTTP 204。
如果您現在想要測試「foo」中的「子文件夾」,只需執行另一個容器列表,將前綴更改爲「foo/bar /」並保留「/」的分隔符。
此外,如果您要創建一個文件夾「images」並且它包含「cat.jpg」,則不需要先創建文件夾,只需創建一個名爲「images/cat.jpg」的對象包含cat.jpg的數據。
您可以找到有關Rackspace公司雲文件和僞層次的文件夾位置的更多信息:
謝謝,它幫了我很多.. –