我正试图以无头的方式使用价态api。
附注:我必须修改超链接,因此它们不是链接,或者我无法发布问题。
情景1:
使用提供的Java示例时,如果没有cookie,则会触发以下URL:
这给了我302响应并将浏览器发送到
这给了我另一个302响应并将浏览器发送到
哪个是D2L登录屏幕。所以我登录并将包含我的凭据的帖子发送到:
https://elearning.masked.edu/d2l/lp/auth/login/login.d2l
最后,我的浏览器被发送到D2L主页:
https://elearning.masked.edu/d2l/lp/homepage/home.d2l?ou=1234123
这不遵循http://docs.valence.desire2learn.com/basic/auth.html中列出的流程。我期待重定向到appURL。
但是,当我们第二次这样做时,会达到预期的结果:
情景2:
区别在于饼干。当我删除elearning.masked.edu的cookie时,方案1中的结果总是会发生。那么当我们在没有cookie的情况下启动时,问题就变成了进行Web服务身份验证调用的正确方法是什么?
答案 0 :(得分:0)
在没有cookie的情况下启动(场景1),这个序列是我以前看到的(使用样本和测试服务器),但有一个区别。
在将凭据发布到的最后一步: HTTP {S}://elearning.masked.edu/d2l/lp/auth/login/login.d2l
预期的结果是首先重定向回登录资源(d2l / auth / api / token),然后重定向到目标:http://localhost:8080%/D2LValenceExample/index.jsp
结合建议来解决这个问题:
相同的代码是否可以使用示例中的密钥和服务器(http://docs.valence.desire2learn.com/samples/gettingStarted.html#java)?如果是这样,它会建议服务器特定的上下文(这可能意味着联系D2L支持)。
在发布凭据和到达主页之间是否还有其他重定向步骤?
是否有任何可能影响登录的特殊过滤器或auth系统?