本文目录一览:
- 1、iframe内嵌A页面,A页面不存在,弹出窗口“Not Found“,弹窗出现在Iframe中,怎么解决
- 2、thinkphp6解决 CORS 跨域
- 3、thinkphp5 跨域验证码
- 4、PHP 设置跨域 域名cookie
iframe内嵌A页面,A页面不存在,弹出窗口“Not Found“,弹窗出现在Iframe中,怎么解决
那要看他是怎么屏蔽的了 大概思路: var frames = window.frames; for(var i=0;iframes.length;i++){ if(frames[i].readyState='complete'){ frames[i].window.onClick=function(return true); } }
thinkphp6解决 CORS 跨域
1,在app/middleware.php中添加
中间件,这样就改成了
*是不安全的,可以在config/cookie.php配置cookie 有效域名的domain
如果接口请求发送了token,会提示Access-Control-Allow-Headers这个问题,tp6默认是这样
可以在'Access-Control-Allow-Headers' 这一样加上XXX-token,
我在搞这个时还遇见post请求变成get
把method改成了type
thinkphp5 跨域验证码
假设
前端域名为:
服务端域名为:
前端页面地址为:
获取验证码地址:
验证验证码地址:
事例:前台地址 要向服务端地址 验证和请求验证码
原理:因为在加载验证码图片的时候请求中携带了cooike,cooike中存了服务端验证码的PHPSESSID。而在验证过程中因为是跨域请求,ajax是不会携带cooike进行提交的。因此需要在ajax设置withCredentials为true时表示当前请求为跨域类型在请求中协带cookie,并且服务端也必须要设置Access-Control-Allow-Credentials:为true才可以起到实际的效果。-跨域php获取域名
顺便贴一下进行请求和验证的两个方法:
PHP 设置跨域 域名cookie
理论上php不可以跨域设置cookie;
php设置cookie流程:返回的信息携带信息,然后靠浏览器来执行写入到cookie,一般浏览器安全机制已经限制跨域写入;
如果你想伪造cookie,可以使用浏览器管理cookie的插件