具有单点登录的Yammer REST API

时间:2014-07-16 01:42:46

标签: javascript sharepoint-2013 yammer

我在SharePoint Online中使用yammer JavaScript SDK(platform_js_sdk.js)来获取登录用户所属的组列表。我有逻辑工作,但问题在于身份验证过程。 每次用户打开浏览器时,都会显示“Login with Yammer”按钮,他们必须单击该按钮才能对自己进行身份验证。如果他们关闭并重新开始,他们必须再次登录。似乎认证令牌由于某种原因没有持久化。我们在我们的环境中启用了单点登录,因此直接导航到Yammer可以正常工作。

所以,以下代码:

yam.connect.loginButton('#my-login',function(resp){ ...... }

在IE 11中返回以下内容:

https://www.yammer.com/platform/login_status.json?client_id=MY_CLIENT_ID&_=SOME_NUMBER的XMLHttpRequest需要跨源资源共享(CORS)。

以及Chrome中的以下内容:

https://www.yammer.com/platform/login_status.json?client_id=MY_CLIENT_ID&_=SOME_NUMBER 401(未经授权)

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

您是否正确填写了Javascript Origins?有关如何设置它们的详细信息,请参阅此文章,如果它们不是: https://developer.yammer.com/upgrading-to-the-new-yammer-js-sdk/

答案 1 :(得分:0)

您是否尝试过预先调用yam.getLoginStatus()?在我的情况下,只要您的cookie完好无损,戳戳yam.getLoginStatus()将恢复上一个会话。