当路径在其中一个文件夹名称中有空格时,IM 无法访问路径的 -> 元数据。因此,如果路径是 /CLIENT/FOLDER NAME,则元数据调用返回 401。我正在对路径参数进行编码,如下所示:
$path = str_replace('%2F', '/', rawurlencode($path));
这为空格添加了 %20。如果我进入保管箱并将“文件夹名称”更改为“文件夹名称”,一切都会顺利进行。我应该用另一种方式对路径进行编码吗?
在我深入文件夹并将前面的文件夹路径作为查询字符串“路径”传递之前,这里有更多代码,所以我遇到问题的 url 是“/my-hub/?path=COMM%20POLICIES”
$clientpath = "/DACLIENTS/$username";//username is the current user
$path = $clientpath;
if(isset($_GET['path'])){
$path .= '/'.rawurldecode($_GET['path']);
}
$path = rawurlencode($path);
$path = str_replace('%2F', '/', $path);
// List contents of directory
if ($home = $client->metadata($path)) {
...
}