我有一个forummotion网站。如果用户登录,我想显示一个弹出窗口。是否有简单可靠的方法来检查用户是否使用JS / jQuery登录。我有一个想法,但它不可靠,我认为它无法实现。这个想法是:
将AJAX请求发送到/ profile它将被重定向到索引页面if 用户未登录,否则存在任何元素 通常出现在/ profile页面上表示用户已登录。
答案 0 :(得分:1)
这完全取决于您使用的框架。有官方方法可以做到这一点,并且有黑客攻击。
官方方法是使用Framework的API。这个API可以在JS的前端,服务器的后端,甚至两者都可用。有关详细信息,请查看框架的文档。如果前端不存在但后端API存在,则可以构建代码以公开此类功能。
如果您的平台根本没有暴露API,那么您可以使用hacks。
一种方法是检查页面上userid
的可用性。例如,旧的Friendster由小部件和模板进行了大量的XSS。通过AJAX请求配置文件页面检查用户是否已登录的小组件,并检查userid
全局变量是否存在且具有值。同样适用于Joomla 1.0和1.5,尽管这是在后端。
另一种方法是AJAX请求未登录的用户无法访问的已知页面。这些页面通常在用户未登录时返回403 Forbidden
。可以使用AJAX检查此状态编号