【问题标题】:addSiteAccount Returns siteAccountId even if credentials are incorrectaddSiteAccount 即使凭据不正确也返回 siteAccountId
【发布时间】:2014-04-16 17:11:12
【问题描述】:

我想区分两种情况:addSiteAccount API 的凭据不正确,addSiteAccount API 的凭据集正确。我注意到的是,这两种情况都返回了一个带有 RefreshStatus=Triggered 的 siteAccountId。但是当我再次调用相同的 API 或任何其他 API 时,我会收到一条登录错误消息。

如何在一次执行 addSiteAccount 时区分这两种情况?

这样我就可以将有关不正确凭据的错误传递给最终用户。谢谢。

【问题讨论】:

    标签: yodlee


    【解决方案1】:

    addSiteAccount1 是用于创建siteaccountID 的 API,即链接的特定帐户的标识符。 在您尝试添加相同的凭据之前,它不会返回任何错误,即在这种情况下,它会检查您是否已经添加了这些凭据并返回这些凭据的响应。

    了解其工作原理:

    调用 addSiteAccount1 后,将创建一个 siteAccountId 并为此启动刷新。这将继续验证通过银行网站传递的凭据并返回响应(成功或失败取决于传递的凭据)。

    要检查状态,您需要在循环中调用getSiteRefreshInfo,我提到的流程供您参考。

    (仅适用于非 MFA 网站)

    1. CobLogin
    2. 注册3
    3. 登录
    4. AddSiteAccount1 –(这将触发刷新请求,无需调用 startSiteRefresh)
    5. 检查 #4 返回的 siteRefreshStatus 字段的值,如果显示“REFRESH_TRIGGERED”,则可以转到 #6
    6. 循环调用getSiteRefreshInfo,直到收到SiteRefreshStatus,因为收到以下任一状态

    PARTIAL_COMPLETE– 这意味着帐户级别的数据已汇总 REFRESH_COMPLETED–刷新已完成。

    LOGIN_FAILURE–提供的登录凭据有误。

    REFRESH_CANCELLED–刷新被用户取消。

    REFRESH_TIMED_OUT–刷新需要更多时间。

    7 从 #6 中您还会得到一个“代码”,如果代码为 402,则表示凭证错误,如果代码为 0(零),则表示凭证正确且收集数据成功。然后你可以去#8并获取交易。 要了解有关 error_code 的更多信息,请参阅ErrorCode 文档。

    8 ExecuteUserSearchRequest 或调用任何其他 API,具体取决于您的实现。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-05
      • 2015-10-14
      • 1970-01-01
      • 2015-07-03
      • 1970-01-01
      • 1970-01-01
      • 2013-09-15
      相关资源
      最近更新 更多