我在从Sisense注销用户时遇到问题。所以我使用jwt登录,并可以使用SisenseJS查看我的仪表板。现在我想调用注销(https://sisense/api/auth/logout)。Sisense位于同一本地网络内的另一台服务器上,因此具有类似10.0.0.45的ip,我已将其映射到主机文件中的"sisense“。一切都很好。
然后,如果我只需转到浏览器并将https://sisense/api/auth/logout放在地址栏中,它就可以工作。我还使用了自签名证书,所以它会提示我“你想继续吗,因为这个站点不是trusted...bla bla”。但是,当我从ajax调用该端点时,问题就出现了
$.ajax({
method: "GET",
contentType: 'application/json',
url: "https://sisense/api/auth/logout"
});(实际上,我也尝试过从控制器内部的webclient调用它,它不需要是任何可接受的ajax调用)。所以它返回403错误。我做错了什么?我应该放一些标题吗?有没有人有这方面的经验?
发布于 2017-09-14 18:25:31
终于让它工作了。
所以ajax调用不起作用,但是重定向是解决方案。
添加了控制器
public ActionResult SignOut()
{
return Redirect("https://sisenseAddress/api/v1/authentication/logout");
} 此外,您可能需要激活CORS on Sisesnse
当你可能使用像Azure这样的SSO时,你可以将注销操作url放在Sisense SSO设置中作为注销端点。所以它首先执行sisense注销,然后返回到您的站点,让我们说Azure注销。
https://stackoverflow.com/questions/46176363
复制相似问题