0

自 6 月 27 日以来,当我们的应用程序尝试将文件上传到 Google Drive 时,当文件的标题未使用 ASCII 写入时,服务器开始返回 503 错误(如下)。

"Error Domain=com.google.HTTPStatus Code=503 "The operation couldn’t be completed. (com.google.HTTPStatus error 503.)""

我们调查了问题,发现如果标题是用ASCII写的,就不会出现错误。我们还测试了诸如“日本语.txt”“中文简体繁体.txt”“한국어.txt”“русскийязык.txt”之类的文件名,它们都以上述错误结尾。当然,如果我们将文件名更改为 ascii 文本,错误就会消失。

我使用 google-api-objectivec-client 库来访问 Google Drive,我所做的并不奇怪 - 只是设置上传时使用的 GTLDriveFile 的 title 属性。

GTLDriveFile *file  = [GTLDriveFile object];
file.title          = title;

我们的代码几个月来一直运行良好。

我将文件上传到服务器时是否有任何可能的错误?如果没有,是否有解决该问题的方法?欢迎任何帮助。谢谢。

PS我还测试了库中包含的“DriveSample”应用程序的问题。使用应用程序的“上传”功能也会出现同样的问题。


6月30日(补充)

文件名问题似乎只存在于“iOS 客户端库”上。我测试了“Python 客户端库”,发现它适用于非 ascii 标题。

如果我用于测试的“DriveSample”应用程序维护不善,我还从 Google 下载了另一个名为“DrEdit”的示例进行验证。不幸的是,“DrEdit”也无法处理上传时的非 ascii 标题。

然后,我检查了每个库访问以进行上传的 URL。

Python: 
https://www.googleapis.com/upload/drive/v2/files?uploadType=resumable&alt=json

Objective-C:
https://www.googleapis.com/upload/rpc?uploadType=resumable&prettyPrint=false

Python 使用与 Google Drive API 文档完全相同的 URL。然而,Objective-C 库使用了不同的 URL,没有记录。

如果库没有问题,难道 URL Objective-C 库访问会导致非 ascii 标题转换问题吗?也许服务器间通信失败或什么?

尽管如此,任何帮助都是受欢迎的。谢谢!

4

1 回答 1

0

该问题在太平洋夏令时间 7 月 3 日 21:30 似乎已在服务器端解决。谢谢你的工作,谷歌。

于 2013-07-05T08:07:33.763 回答