我正在尝试使用Zend_Gdata
插件将文档上传到Google文档中。它上传得很好。
但默认情况下该文档变为私有。如何将其设置为公开。如何获取doc到我的doc的doc id和URL链接,以便其他人可以访问它以仅查看?
$service = Zend_Gdata_Docs::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($email, $passwd, $service);
$docs = new Zend_Gdata_Docs($client);
$feed = $docs->getDocumentListFeed();
$newDocumentEntry = $docs->uploadFile(
$filename, $name, null, Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI
);
我感谢任何帮助。
由于
答案 0 :(得分:4)
您必须提供一个不同的URI作为uploadFile()
函数的第四个参数,您正在使用的那个将把文档发送给私有。 (见下文)
查看Zend_Gdata_Docs
的源代码。
class Zend_Gdata_Docs extends Zend_Gdata
{
const DOCUMENTS_LIST_FEED_URI
= 'https://docs.google.com/feeds/documents/private/full';
// ...
如您所见,班级const
正在链接到私人路径。您不必使用Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI
,而是必须使用公共。 但,根据Google's Documents List Feed API,它们仅接受私有。
visibility参数有两个可能的值:private和public。
注意:目前,private是Documents List API中唯一可用的可见性。有关详细信息,请参阅下面的Visibility值。
顺便说一下,最终结果应该将Zend_Gdata_App_Entry
对象返回给$newDocumentEntry
,我认为您应该能够调用$newDocumentEntry->getEditLink()
等函数。
如果您想查看该对象中存储的其他内容:
Zend_Debug::dump($newDocumentEntry);
祝你好运!