【发布时间】:2014-03-20 16:11:01
【问题描述】:
是否有人成功创建了非交互式工作流程。基本上,我想要完成的就是这个。在我的 CRM 中,我正在尝试对我的 LMS 进行 Valance API 标注,当在 CRM 中创建用户时,它将创建一个 LMS 用户。 这需要在没有任何“人机交互”的情况下发生。 我正在使用 Valance Java SDK (https://github.com/Desire2Learn-Valence/valence-sdk-java) 作为我的代码的框架,在其核心,我正在执行这个流程:
- D2LAppContext DAC = 新 D2LAppContext(aid,key);
- URL targetURL = new URL(protocol+endpt + actiontype);
- URL authEP = DAC.createWebUrlForAuthentication(endpt, hport, 目标网址);
- httprequest (Get) authEP(返回 200 状态码 - OK)
- ID2LUserContext DUC = DAC.createUserContext(authEP, endpt, hport, 真的); (我也尝试过传递用户标识和用户密钥 从 API 测试应用程序生成,基于登录为 交互式用户。
- URL userURL = DUC.createAuthenticatedUri(actiontype, 'GET');
- httprequest (Get) userURL(返回 403 状态码 - 禁止)
有没有人对如何做到这一点提出建议?我的一个问题是 API 期望哪个用户 ID 和用户密钥?我用来通过 UI 登录 LMS 的那个?或者从授权调用返回的东西? 谢谢! 吉姆
【问题讨论】:
-
我确实找到了这个帖子:stackoverflow.com/questions/10503375/…,我认为它会起作用。我在此注意到的是,当我登录时,我得到了 sessionvalues,当我进行身份验证时,它似乎可以工作(获得状态 200,好的),但真正发生的是,我的会话已过期(重定向到登录)
标签: desire2learn