ND0*_*003 3 google-api-cpp-client gmail-api
是否有关于如何使用 GMAIL API 读取 C++ 消息的示例?
我有 Google CPP 客户端并已运行日历示例。想知道是否有类似的 Gmail 示例。
小智 6
我不知道示例,也没有看到为其生成的 API,因此您需要自己执行此操作。自己做并不难,但不幸的是,如果您需要完整的 API,可能会变得乏味。
您需要使用其 REST 接口https://developers.google.com/gmail/api/直接与 gmail 进行 HTTP 对话
您可以随心所欲地执行此操作。使用 Google API for C++ 库,您可以直接使用 HTTP 传输层,也可以在客户端服务库抽象类之上构建。客户端服务库类被设计为代码生成器的目标,但作为起点仍然可能是合理的,因为基类已经完成了所有有趣的事情,因此您只需向其提供特定于 GMail API 的繁琐细节。我选择哪一个取决于我需要的 API 范围,以及我是否还使用其他 API,以及代码库中的一致性和通用性可能发挥作用的地方。
您可以使用您已经熟悉的 Calendar API 作为示例。请记住,这是 API 的完整覆盖,您一开始不需要它,因此在开始时可能需要一些简化的快捷方式(例如,实现一个具有有限参数支持的方法)。
您想要查看在以下位置实现的服务调整:
和
这些文件被划分为日历中不同资源类型的不同操作。只需选择一种方法类型(例如 CalendarListResource_ListMethod)并查看其日历 REST API ( https://developers.google.com/google-apps/calendar/v3/reference/#CalendarList ) 即可进行操作。然后用它来类比相应的 Gmail REST API(我猜https://developers.google.com/gmail/api/v1/reference/users/messages)
请注意,您不需要专门针对 API 的数据对象(这是生成的大多数类),并且如果您一开始不实现整个 API,则可以在这些方法对象实现中采取一些快捷方式。但也许可以遵循生成代码的模式,直到您感到满意为止,这样您就不太可能引入破坏基类的不一致情况。
最后,“您所做的一切”就是使用 REST 样式模式发送 HTTP 消息,并获取响应。基类具有已实现的所有样板启发式方法和协议/编码,但需要您提供特定的 URL、有效负载和偶尔的标头,然后解释 HTTP 响应主体以获取您所调用的 API 的语义。
| 归档时间: |
|
| 查看次数: |
5290 次 |
| 最近记录: |