0

大家好,我正在构建一个将文档上传到我的谷歌文档帐户的表单,但是它不起作用我不断收到错误 - 以下是我的代码;

$service = Zend_Gdata_Docs::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($username, $pww, $service);
$docs = new Zend_Gdata_Docs($client);

$newDocumentEntry = $docs->uploadFile($_FILES['file']['tmp_name'], $_FILES['file']['name'], null, Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI);

我收到以下错误:

PHP 致命错误:未捕获的异常 'Zend_Gdata_App_HttpException' 带有消息 'Expected response code 200, got 400 Inconsistent repeating query parameter' in C:...\Zend\Gdata\App.php:700

我正在使用 php 和 Zend gdata 代码。

4

1 回答 1

0

Zend_Gdata_Docs 中有一个 mimetype 的“错误”。如果您使用临时文件并将文件名作为标题,它不会自动为您提取 mimetype。它尝试根据临时文件上不存在的 fileLocation 扩展名提取 mimetype。

我创建了一个适合我的类,而不是更新 Zend 类。之所以称为ConvertDoc ,是因为我希望能够上传电子表格并以 csv 格式下载。

你真正需要的是这个...

    // get mimetype from original file name
    $filenameParts = explode('.', $originalFileName);
    $fileExtension = end($filenameParts);
    $mimeType = Zend_Gdata_Docs::lookupMimeType($fileExtension);

并传递 $mimetype 而不是 null。

于 2011-02-09T18:37:23.790 回答