Google Drive Rest API,终结点和Google API客户端

时间:2016-02-09 10:39:22

标签: ios api google-app-engine google-drive-api google-cloud-endpoints

我正在使用Google Endpoints后端访问Google云端硬盘并将内容返回到iOS应用程序。 为此,我在Google Endpoints for Java上使用Google API客户端和Google Drive SDK。然后,我为我的终端生成iOS客户端库,并在我的iOS项目中使用它和iOS API Client Client。

我遇到的问题是我的一个端点返回一个包含Google Drive的File个对象的对象。

在iOS开始处理这些对象之前,一切似乎都很好。在端点响应中,客户端库在iOS中读取Google云端硬盘FileGTLDriveFile,这是Google Drive SDK for iOS的相应类别。但是,在尝试访问对象的某些成员时,例如namemodifiedTime,我遇到了崩溃问题。 起初我认为这是因为我使用的是一个非常过时的Google API客户端的cocoapod(我查看了源代码并看到了类中很多缺少的字段)。 在经历了在iOS项目中手动包含Google API客户端的麻烦之后(由于Google的错误/过时指示导致很多麻烦)尽管GTLDriveFile的某些字段现在是name可用,我仍然会在modifiedTime字段崩溃。

经过调查,我发现通过API资源管理器的Google Drive Rest API会返回modifiedTime的字符串:

... "kind": "drive#file", ... "modifiedTime": "2016-02-08T16:34:22.127Z", ...

但是,我的Google端点响应正在返回一个对象

... "kind": "drive#file", ... "modifiedTime": { "value": "1454513589789", "dateOnly": false, "timeZoneShift": 0 }, ...

因此,我的iOS GTLDriveFile类在尝试解析字符串时实际上正在处理NSDictionary

时崩溃

在端点上,我正在使用最新版本:Google API客户端(和依赖项)是1.21.0以及Drive Rest API v3-rev8-1.21.0。在iOS上,我正在使用Google API Client for Objective-C

的新克隆

我已检查API discovery documents for Google DrivemodifiedTime字段应该是一个字符串,所以我认为问题可能出在Google端点上。

有关Google端点未正确转换File对象的原因的任何线索吗?

0 个答案:

没有答案