TripIt集成的困境

时间:2013-05-14 12:32:17

标签: api integration

我们正在尝试将TripIt与我们的网络应用程序集成以进行行程管理。我创建了一个新的App并获得了api key&秘密。但我们希望使用员工的旅行账户并检索他们的旅行和旅行。在他们的帐户中创建旅行。现在我有一个两难的境地,因为我正在使用我的api密钥&秘密,我可以检索在我的帐户中创建的旅行,但我想用我的api密钥检索使用他们的tripit帐户登录的旅行。

所以在这种情况下,我会要求用户的旅行凭证,有没有办法可以使用我的api密钥进行旅行?欢迎任何可行的解决方案。如果你清楚我的流程我能够理解。

1 个答案:

答案 0 :(得分:1)

为您的应用颁发(OAuth)API密钥和密钥,而不是针对您的特定用户帐户。这意味着您的应用程序可以被授予访问用户数据的权限。如果您使用过Twitter或Facebook API,TripIt的API行为大致相同。

  1. register an application通过TripIt(听起来你已经退步了)
  2. 使用SDK of your choice,您可以在代码中创建端点,以处理OAuth workflow中的各个步骤。
  3. 以下是TripIt使用的OAuth 1.0工作流程的快速概述。

    • 用户开始将TripIt帐户连接到您的应用程序
    • 您的应用程序构建请求令牌URL并将用户发送到TripIt的OAuth对话框,指示callback_url
    • OAuth对话框(在TripIt的网站上)提示用户接受或拒绝权限
    • 如果获得批准,他们会返回您的网站(callback_url),其中包含“签名”请求令牌作为查询字符串的一部分
    • 后端进程(通常是简单的CURL请求)交换访问令牌的请求令牌以完成流程
    • 您将与用户关联的访问令牌存储在数据库中,并将其用于将来针对API的请求

    如果您正好使用PHP,请查看open source example application。它不会将令牌保存到数据库中(只是将其保存在会话中),但您应该能够从中收集基本想法。