加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax – 使用securesocial服务而不使用其视图

发布时间:2020-12-16 02:56:41 所属栏目:百科 来源:网络整理
导读:我开始在我的play / scala应用程序中集成SecureSocial,但我并不喜欢它在不同视图之间所做的所有重定向. 示例 – 尝试从其默认登录页面登录,如果您输入了错误的通行证,您将被重定向到不同的页面(网址),但使用相同的登录表单.唯一不同的是,有一个错误信息……
我开始在我的play / scala应用程序中集成SecureSocial,但我并不喜欢它在不同视图之间所做的所有重定向.

示例 – 尝试从其默认登录页面登录,如果您输入了错误的通行证,您将被重定向到不同的页面(网址),但使用相同的登录表单.唯一不同的是,有一个错误信息……

我想要一个简单的登录表单(用户/密码提供程序)在我的主页的角落,使用ajax提交它的数据,这些数据在服务器上验证,并且响应显示错误消息或更改窗口.地点.
在此表单旁边,我将添加一个链接以转到更高级的登录页面,该页面添加了使用其他提供程序(如fb / twitter等)的选项.
但是从该页面我还想使用ajax提交细节并获得响应.

我试图浏览SecureSocial源,但在那里有点迷失.

任何人都可以告诉我如何使用SecureSocial,但不使用它的任何观点?

注意:我对定制他们的视图不感兴趣,这不仅仅是一个CSS /设计问题,我想要处理Ajaxly的登录详细信息而不是正常的表单提交,然后是重定向…

解决方法

在使用SecureSocial代码进行了一些搜索之后,我更好地了解了它的运行方式.

您可以使用play.plugins文件中列出的任何提供程序单独使用您自己的登录/身份验证代码来验证用户的信息.只需确保您发送提供商所需的正确参数.

我喜欢SecureSocial的ProviderController类根据参数动态决定使用哪个提供程序的方式.但我不喜欢它所做的响应 – 重定向..我想用一些数据响应ajax请求,并让客户端js处理它.

这是我的解决方案:

几乎将所有ProviderController代码复制到我自己的Auth.scala文件(一个Controller).
更改了与“case ex,case _”相关的重定向,保留了重定向成功auth,因为它添加了与用户相关的SecureSocial会话密钥.
从我的路由文件中删除了所有与SecureSocial相关的路由.
使用logintype(userpass / google / fb / etc …)添加一个额外的隐藏字段,并配置我的登录ajax post以将其与帖子一起发送到我的Auth控制器.

如果您需要更多信息评论,我会编辑答案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读