2016 - 2024

感恩一路有你

cookie为什么不能跨域访问 如何使用Cookie实现跨域的单点登录?

浏览量:2765 时间:2021-03-13 18:21:57 作者:admin

如何使用Cookie实现跨域的单点登录?

在指定的域中写入所需的cookie

create cookie回应。饼干(“MyCookie”).Expires=日期365回应。饼干(“MyCookle”)。域=“mydomaln.com网站"

回应。饼干(“MyCookle”)(“Username”)=strUsername回应。饼干(“MyCookle”)(“Password”)=strPassword

读写cookie非常简单。上面的代码创建一个cookie并设置cookie的属性:域、过期时间和存储在cookie中的其他值。这里,strusename和strpassword是在前面某处设置的变量。然后,通过下面的语句读入cookie。

“读取cookie

datexpdate=请求Cookies(“MyCookie”)

标准域=请求Cookies(“MyCookle”).Domain

结构名称=请求Cookies(“MyCookle”)(“Username”)

strPassword=请求Cookies(“MyCookie”)(“Password”)

正常情况下,浏览器禁止跨域访问cookies。通常,跨域cookies可以通过SSO服务获得。其思想是:域a页面访问位于域a中的服务器,验证权限,域a服务器与域B服务器通信,记录认证域的唯一加密字符串(并向域B服务器发送cookie信息),域a服务器返回302跳到域B,并将加密字符串作为URL的一部分,从a域跳转到B域,B域服务器通过加密字符串提前从a域服务器获取cookie信息,并在响应头中添加set cookie字段设置cookie

设置allow control allow credentials,使cookie可以跨域携带;同时,设置Allow控件Allow origin。此时不能使用通配符。

js中cookie可以跨域取值吗?

正常情况下禁止浏览器获取跨域Cookie

通常可以通过SSO服务获取跨域Cookie。其思想如下:

域a页面访问位于域a中的服务器以验证权限

域a服务器与域B服务器通信,记录一个唯一的加密字符串作为身份验证域(并向域B服务器发送cookie信息)

域a服务器返回302跳转,跳转到域B,并将加密字符串作为url的一部分

页面从域a跳转到域B,域B服务器通过加密字符串获取事先从域a服务器获取的cookie信息,并在响应头中添加set cookie字段来设置cookie

跨域无法添加cookie吗?

假设

当通过a网站下的iframe或Ajax调用B下的内容时,ie默认会阻止B写入任何cookie

//B中被调用的页面需要写入P3P头,以消除IE对写入cookie的阻塞context.Response.AddHeader文件(“P3P”,“CP=CAO PSA OUR”)

//A through Ajax调用http://www.B.com何时访问中的内容时,需要使用jsonp。为了匹配它的工作,您需要添加以下两句话来生成jsonp returncontext.Response.ContentType=“文本/纯文本”context.Response.Write文件( 字符串格式(“{0}(“OK”)”上下文。请求[“callback”

//通过调用JSON跨域访问jQuery.ajax文件({

url:url,

类型:“GET”

数据:数据,

数据类型:“jsonp”,

成功:函数(数据){window.location.href=Tourl

}

js能读取跨域的cookie吗?

登录后,登录信息保存到cookie中。同时,服务器中的用户设置登录状态,以检查跨域访问后cookie是否存在。

如果存在,请将其与数据库中的登录状态进行比较。如果处于登录状态。如果页面处于退出状态,则直接访问该页面。跳转到登录页。关闭所有页面后,将登录状态重置为退出

cookie为什么不能跨域访问 跨域时如何处理cookie 跨域传递cookie

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。