我有一个Zend_Gdata_App_Entry类型的条目,
此条目是一个集合/文件夹,我尝试获取此文件夹的URI,
我知道URI是一个URL,但条目的id也是一个URL也有什么区别?
我想这样做:
// Instantiate a FolderQuery object to retrieve the content of the folder.
FolderQuery contentQuery = new FolderQuery(folder.ResourceId);
URI = contentQuery.Uri
但不是在.NET中,而是在PHP中使用Zend gdata框架
谢谢!
答案 0 :(得分:1)
在GData中,自身URI和ID通常相对类似。所以,如果你有一个或另一个,它真的没关系。
ResourceID略有不同,因为它们不是URL,而是folder:1234
形式。如果您在folder:
前缀后面有数字,则可以轻松构建它们。如果仔细查看从资源ID构造的文档的ID。所有这些都存在实际差异,GData协议主要需要它们。
无论如何,一旦你拥有该文件夹的ID或资源ID,你就可以使用以下网址列出其内容:
https://docs.google.com/feeds/default/private/full/folder%3A1234/contents
请确保将folder%3A1234
替换为该文件夹的实际Ressource ID。
然后,您可以在方法Zend_Gdata_Docs.getDocumentListFeed(String location)
中使用该网址作为位置属性。这将为您提供包含文件夹内所有元素的文档Feed。
答案 1 :(得分:1)
也许这会对你有所帮助。创建子文件夹,然后将文件上传到新文件夹:
$service = Zend_Gdata_Docs::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service);
$docs = new Zend_Gdata_Docs($client);
$parentFolder = 'folder%3A[folderid]';
$newFolder = $docs->createFolder($_POST['email'], $parentFolder);
$location = str_replace($parentFolder . '/', '', $newFolder->getSelfLink()->getHref());
// Upload the file to google docs
$newDocumentEntry = $docs->uploadFile(
$fileToUploadTemp,
$fileToUpload,
Zend_Gdata_Docs::lookupMimeType($fileExtension),
$location
);