cookie

IE iframe cookie问题(p3p)

寵の児 提交于 2020-03-02 19:08:05
前段时间碰到一个问题,就是在IE下,使用iFrame嵌入页面时,该页面的会话级别的cookie无法写入,导致服务端始终无法获取JSESSIONID,每次都是产生一个新的,使得Session无法使用。 只需要设置 P3P HTTP Header,在隐含 iframe 里面跨域设置 cookie 就可以成功。 ASP直接在头部加了头部申明,测试有效。 <%Response.AddHeader "P3P", "CP=CAO PSA OUR"%> PHP的话,应该是如下写法: header('P3P: CP=CAO PSA OUR'); ASP.NET的话 通过在代码上加Response.AddHeader("P3P", "CP=CAO PSA OUR")或者在Window服务中将ASP.NET State Service 启动。 JSP: response.setHeader("P3P","CP=CAO PSA OUR") 一、关于IE6 IFrame或Frame中读写cookie的问题分析 IE6加入了以PlatformforPrivacyPreferences(P3P)为基础的 隐私保护功能,有关此功能的说明请参阅“” 在ie6中Cookie被分成了first party cookie和third party cookie,即第一方Cookie和第三方Cookie

CP="CAO PSA OUR" 用P3P header解决iframe跨域访问cookie

|▌冷眼眸甩不掉的悲伤 提交于 2020-03-02 18:43:46
1、IE浏览器iframe跨域丢失Session问题 在开发中,我们经常会遇到使用Frame来工作,而且有时是为了跟其他网站集成,应用到多域的情况下,而Iframe是不能保存Session的因此,网上可以找到很多相关的文章,如果网站可以采用设置Web.Config中的配置: mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="40" /> 把cookieless="false"改成"true"就可以了但也同样有个小问题,就是如果页面中采用Javascript的window.location.href=''这样的方式来重定向的话,系统会认为这是另一个新的请求,产生一个新的SessionId,导致原Session同样的丢失所以对于重定向,还是使用Response.Redirect()为好 除了Ifrmae有丢Session问题外,frameset也有同样的问题Frameset的问题更不确定,是有时会丢,有时不会丢,这更认人头痛,在网上找到了一个方法,在页面page_onload里添加一语句: Response

同一IP不同端口访问的站点iframe应用session丢失怎么办?

自作多情 提交于 2020-03-02 18:19:53
在网站群的建设中,各子站需要共享主站的footer等公共信息。同时主站的后台管理也集成了各子站的管理,采取的方式是使用 iframe 嵌入各站的页面。在本机开发环境中,没有出现任何的问题。但是一放到测试环境中,便遇到 session 丢失的问题。 环境:应用服务器采用tomcat6.0,各个站点单独使用一个应用服务器,部署在一台物理服务器上。外部访问采用同一个IP,但是不同的端口。 起初以为,IE它的安全策略默认是会把iframe中的页面站点认为是不可信任的,它会阻止该站点传过来的 cookie (如果你在iframe中的URL跳转是用的localhost,则不会被阻挡),所以因为没法使用cookie了,session便失效了。解决的方法是在过滤器,或者被嵌入的页面内加入属性为P3P的header信息。 java 为:response.addHeader("P3P","CP=CAO PSA OUR");但是依然没有成功。网上的解决方案都是这么说,况且自己以前还弄过,都成功过,这次怎么弄都不好。 今天脑子安静下来,仔细的分析这里面的原因。如果是IE的安全限制,但是火狐、google浏览器没有这样的限制,为什么这两个浏览器也出现这样的情况。这肯定不仅仅和跨域引起的P3P的安全问题有关。于是在本机测试,通过iframe引入测试环境中的链接,设置了P3P,发现一切正常。这就更说明了

Python面试重点(web篇)

心不动则不痛 提交于 2020-03-02 12:54:54
Python面试重点(web篇) 注意:只有必答题部分计算分值,补充题不计算分值。 第一部分 必答题 注意:除第四题4分以外,其他题均每题3分。 写出常用的bootstrap的样式。 什么是响应式布局? 请通过jQuery发送ajax请求。 JavaScript与this相关的面试题(4分) name = '老男孩'; info = { name:'alex', age:123, func:function(){ console.log(this.name); } } info.func() name = '老男孩'; info = { name:'alex', age:123, func:function(){ console.log(this.name); function f1(){ console.log(this.name); } f1() } } info.func() name = '老男孩'; info = { name:'alex', age:123, func:function(){ console.log(this.name); (function(){ console.log(this.name); })() } } info.func() name = '老男孩'; info = { name:'alex', age:123, func:function(

Python面试重点(web篇)

青春壹個敷衍的年華 提交于 2020-03-02 12:53:36
1.写出常用的bootstrap的样式。 row:行 col- - :列(第一个 可以为xs[超小]/sm[小型]/md[中型]/lg[大型];第二个 必须为12以内的【列数】) col- -offset- :列偏移(第一个 同上,第二个 范围为1~11,表示把该列的左外边距(margin-left)增加 列) col- - - :列排序(第一个 同上,第二个 可以为push[向右]/pull[向左],第三个 范围是1~11【列数】) 排版 small:内联子标题 lead:引导主体副本 text- :文本样式( 可以为left[左对齐]/center[居中对齐]/right[右对齐]/muted[减弱文本] /primary/success/info/warning/danger /justify[自动换行]/nowrap[不换行] /lowercase[小写]/uppercase[大写]/capitalize[首字母大写] ) list-inline:列表置于同一行 表格 table:基本样式,只有横向分割线 table- :表格样式(*可以为triped[添加条纹]/bordered[添加边框]/hover[启用悬停]/condensed[更加紧凑]) tr/th/td:由active/success/info/warning/danger来改变背景颜色 table

前端+Django面试题

↘锁芯ラ 提交于 2020-03-02 12:53:05
### 第一部分 1.写出常用的bootstrap的样式。 ''' 栅格系统 表单 表格 图片 按钮 ''' 2.什么是响应式布局? ''' 一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。这个概念是为解决移动 互联网浏览而诞生的。 ''' 3. 请通过jQuery发送ajax请求。 ''' $.ajax({ url: "/login", data: {name: 'ccc'}, type: "POST", dataType: "json", success: function(data) { // data = jQuery.parseJSON(data); //dataType指明了返回数据为json类型,故不需要再反序列化 ... } }); ''' 4.JavaScript与this相关 ''' name = '老男孩'; info = { name: 'alex', age: 123, func: function(){ console.log(this.name); } } info.func() name = '老男孩'; info = { name: 'alex', age: 123, func: function(){ console.log(this.name); function f1() { console.log(this.name); }

Python面试重点(web篇)

泪湿孤枕 提交于 2020-03-02 12:13:52
Python面试重点(web篇) 注意:只有必答题部分计算分值,补充题不计算分值。 第一部分 必答题 注意:除第四题4分以外,其他题均每题3分。 写出常用的bootstrap的样式。 Bootstrap表格样式、栅格系统、带边框的表格、状态类表格(带背景色的表格)、内联表单、禁用状态和只读状态 什么是响应式布局? 请通过jQuery发送ajax请求。 $.ajax({ url:'/test/', # 提交的地址 type:"post", # 请求方式 data:{ # 提交的数据 name:"alex", age:73, hobby:JSON.stringify(['装逼,画饼,上北大']) }, success:function(ret){ # 响应成功的回调函数 }, error:function (ret) { # 相应失败的回调函数 console.log(ret) }}) JavaScript与this相关的面试题(4分) name = '老男孩';​info = { name:'alex', age:123, func:function(){ console.log(this.name); }}​info.func() name = '老男孩';​info = { name:'alex', age:123, func:function(){ console.log

web

人盡茶涼 提交于 2020-03-02 11:57:18
Python面试重点(web篇) 注意:只有必答题部分计算分值,补充题不计算分值。 第一部分 必答题 注意:除第四题4分以外,其他题均每题3分。 写出常用的bootstrap的样式。 什么是响应式布局? 响应式布局:简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。这个概念是为解决移动互联网浏览而诞生的。 请通过jQuery发送ajax请求。 $.ajax({ type: 'POST', url: "http://xxx/yyy/zzz/sendVerifyCode", data:{ phoneNo:$(".tel").val() }, success: function(data){ $.toast("发送成功", "text") }, error: function(){ $.toast("发送失败", "text") } }) JavaScript与this相关的面试题(4分) name = '老男孩'; info = { name:'alex', age:123, func:function(){ console.log(this.name); } } info.func() // alex name = '老男孩'; info = { name:'alex', age:123, func:function(){ console.log(this

Python面试Web篇(附答案)

*爱你&永不变心* 提交于 2020-03-02 11:56:58
必答题 注意:除第四题4分以外,其他题均每题3分。 1,写出常用的bootstrap的样式。 引入jquery.js文件 栅格系统:<div class="col-md-1>1</div> 表格样式:table 表单样式:.form-control来修饰 支持多行文本的文本域:<textarea class="form-control" rows="3"></textarea> 单选框和多选框 按钮:button 图片:img 2,什么是响应式布局? 跟随设备界面大小自动更改内容大小 3,请通过jQuery发送ajax请求。 $.ajax({ type:请求方式, url: 请求地址, data:请求参数, dataType: 服务器返回值类型, success:回调函数 }); 4,JavaScript与this相关的面试题(4分) name = '老男孩'; ​ info = { name:'alex', age:123, func:function(){ console.log(this.name); } } ​ info.func() name = '老男孩'; info = { name:'alex', age:123, func:function(){ console.log(this.name); function f1(){ console.log(this

Spring Security基于Oauth2的SSO单点登录怎样做?一个注解搞定

旧巷老猫 提交于 2020-03-02 11:19:49
一、说明 单点登录顾名思义就是在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统,免除多次登录的烦恼。本文主要介绍 同域 和 跨域 两种不同场景单点登录的实现原理,并使用 Spring Security 来实现一个最简单的 跨域 SSO客户端 。 二、原理说明 单点登录主流都是基于共享 cookie 来实现的,下面分别介绍 同域 和 跨域 下的两种场景具体怎样实现共享 cookie 的 2.1. 同域单点登录 适用场景 :都是企业自己的系统,所有系统都使用同一个一级域名通过不同的二级域名来区分。 举个例子 :公司有一个一级域名为 zlt.com ,我们有三个系统分别是: 门户系统(sso.zlt.com) 、 应用1(app1.zlt.com) 和 应用2(app2.zlt.com) ,需要实现系统之间的单点登录,实现架构如下: 核心原理: 门户系统 设置 Cookie 的 domain 为一级域名也就是 zlt.com ,这样就可以共享门户的 Cookie 给所有的使用该域名( xxx.zlt.com )的系统 使用 Spring Session 等技术让所有系统共享 Session 这样只要 门户系统 登录之后无论跳转 应用1 或者 应用2 ,都能通过门户 Cookie 中的 sessionId 读取到 Session 中的登录信息实现 单点登录 2.2.