我的网站是单页ajax网站。 因此,当我登录时,没有回发到服务器。
为了使用Disqus登录,我应该使用以下代码:
var disqus_config = function () {
// The generated payload which authenticates users with Disqus
this.page.remote_auth_s3 = "generated payload";
this.page.api_key = "mypublic key";
// This adds the custom login/logout functionality
this.sso = {
... urls and such ..
};
};
我可以在登录服务中生成SSO有效负载并将其传递给客户端。 但是,如何通知Disqus现在有一个应该激活的有效负载? 上面的脚本在加载页面时执行,早在登录代码之前。
想法?
答案 0 :(得分:2)
您可以使用DISQUS.reset
函数重新加载Disqus嵌入,并在用户登录后更新配置的特定元素(如果是新的SSO有效内容):
var disqus_sso_payload_update = function() {
this.page.remote_auth_s3 = "new payload";
}
DISQUS.reset({reload:true,
config:disqus_sso_payload_update});
its use in AJAX page changes记录了reset
函数 - 但是从我阅读源代码开始,它将应用您对现有配置提供的任何更改。