JSONP or window.postMessage & MessageChannel
JSONP or window.postMessage & MessageChannel
好的,所以在构建x域的sso位逻辑时,我们已经达到了未知。
使用JSONP或window.postMessage
&MessageChannel (MessageChannel)
for windows私生子IE10.
逻辑是(显然相当std)。一个主域,两个其他域(site2和site3)。登录站点1
-
用户向主域发布表单。
-
主域,将用户登录到主域并重定向回site1.com/sso?token=uhytchvgjb
-
site1/sso解密令牌并登录到site1
这个逻辑工作得很好,很有意义。现在输入"上下文登录"。即,js灯箱弹出,登录,将页面转换为登录状态。
以上3个步骤可以在iframe中完成,但随后我需要部署使用postMessage
来警告成功登录的父窗口。然而,经过研究,postMessage并不友好(令人震惊)。所以我必须使用MessageChannel,但是对于一个烦人的浏览器来说似乎是额外的工作。
是否可以使用jquery ajax和jsonp?例如,登录site1
-
用户帖子通过ajax数据到主域
-
主域验证详细信息并登录当前用户,并在响应中返回令牌给客户端。
-
客户端在收到响应时将令牌传递回site.com sso check并向客户端返回成功
-
客户端将页面转换为已登录状态或重定向到已登录页面。
以上似乎是合理可行的。问题是,如果使用了JSONP方法,客户机是否会登录到主域?
可以。
当JSONP请求发送到二级网站时,响应可能包含setcookie头。可以通过这种方式为二级网站设置会话cookie。因此,会话也可能为它启动。可设置登录标志
- jquery点击函数select&取消选择
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- Angular js-返回一个包含类似
- 一点javascript元编程&可链接的设置器
- 通过JSON&比较时间
- Jquery模板,如果xx&&如果yy
- jQuery工具验证器自定义效果-添加&消除影响
- Twitter引导程序Typeahead-Id&标签
- AngularJS&JSON-从Previous&下一个对象
- 什么是&&在没有if的行中的变量之间
- 关于引入外部javascript文件的问题&css通过https
- 指令的模板必须只有一个根元素:With restrict E&替换true
- 使用ajax的服务器端分页&jQuery
- Javascript,如果条件在没有&&逻辑运算符当&&它不起作用
- 如何使用dropzone&vueJs
- 如何准确执行加载脚本&退出弹出窗口
- 如何添加CSS&JavaScript进入Windows窗体应用程序C#.net
- Solr查询以按日期月份获取数据&年
- 显示&作为&在jsp中使用angularjs而不使用ng-bind-html
- 如何惯用地手动销毁scope&在AngularJS中重新创建