2

在过去的2周左右,我突然开始收到用户在我们的应用程序中出现错误的报告,说“预期响应代码200,得到400.无法转换文档“。这是多年来没有任何问题的代码。我们将Zend Framework(GData)与Google Docs(AuthSub)结合使用。预期响应代码200,得到400.无法转换文档

当问题发生时,我们将问题记录到文本文件中。当它被记录时,用户经常尝试多次(有时间隔几秒,其他时间间隔较长时间),并且它继续失败。有问题的代码只是在用户的帐户中创建一个新的Google文档,并给它一个标题(没有内容)。

本来,我用这个代码:

// Create new document 
$data = new Zend_Gdata_Docs_DocumentListEntry(); 
$data->setCategory(
    array(new Zend_Gdata_App_Extension_Category(
      "http://schemas.google.com/docs/2007#document", 
      "http://schemas.google.com/g/2005#kind" 
))); 
$data->setTitle(new Zend_Gdata_App_Extension_Title($title, null)); 

// Add document to your list 
$test = $sharedocs->insertDocument($data, Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI); 

试验并看看是否有与特定的功能的问题,我试图创建一个空白Word文档和代码更改为:

$test = $sharedocs->uploadFile('/mypath/empty.doc', $title, null, Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI); 

但是,我仍然看到“无法转换文档”错误。他们相对较少,而且我无法在这里在我自己的计算机上重现此问题。 $ title变量不包含任何不寻常的东西(特殊字符等)。

此代码之前都工作正常 - 现在是否存在已知的Google Docs API问题?我还能尝试什么?

注意:请参阅下面的我的后续评论,在这里我已经确定了发生此错误的可重现场景。

+0

我没有使用过这个特定的API,但400是“错误的请求” - 你能记录API提供的响应正文吗?它可能包含特定的错误消息或失败原因。 –

+0

以下是API请求失败时的响应:https://docs.google.com/document/d/1KM2-GgZl-rMsEL9tdqO4cP5YEC4GZ2Sw9i_pu0217do/edit –

+0

另一个注意事项 - 每次发生错误时记录错误,它发生的频率很高(每隔几分钟一次)。另外,当某个用户失败时,我经常会看到他们在接下来的几分钟内再次尝试几次,并且继续为他们抛出错误。 –

回答

0

我有完全相同的问题,但我注意到,我使用API​​来保存演示文稿如果没有一个文件......所以,这是一个可怕的黑客,但我尽量保存文档(如果该帐户已被访问,则工作)...如果失败,我保存并删除一个演示文稿,然后重试保存该文档,然后运行。可怕的,可怕的,可怕的破解

相关问题