当前位置: 首页 > news >正文

网站功能调研网站免费正能量软件直播

网站功能调研,网站免费正能量软件直播,上海高端网站公司,4s店网站模板什么是跨域? 跨域是指从一个域名的网页去请求另一个域名的资源。比如从www.baidu.com页面去请求www.google.com的资源。但是一般情况下不能这么做,他是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。 跨域的严格定义是&…

什么是跨域?

       跨域是指从一个域名的网页去请求另一个域名的资源。比如从www.baidu.com页面去请求www.google.com的资源。但是一般情况下不能这么做,他是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。

       跨域的严格定义是:只要协议、端口、域名有任何一个的不同,就被当做是跨域。

       所谓同源是指:域名、协议、端口有任何一个不同,就是跨域。

URL

说明

是否允许通信

http://www.a.com:80/a.js
http://www.a.com:80/b.js

同一域名下

允许

http://www.a.com:80/lab/a.js
http://www.a.com:80/script/b.js

同一域名下不同文件夹

允许

http://www.a.com:8000/a.js
http://www.a.com/b.js

同一域名,不同端口

不允许

http://www.a.com:80/a.js
https://www.a.com:443/b.js  ssl

同一域名,不同协议

不允许

http://www.a.com/a.js
http://script.a.com/b.js

主域相同,子域不同

不允许

http://www.a.com/a.js
http://a.com/b.js

同一域名,不同二级域名(同上)

不允许(cookie这种情况下也不允许访问)

http://www.cnblogs.com/a.js
http://www.a.com/b.js

不同域名

不允许

为什么浏览器要限制跨域访问呢?

原因就是安全问题:
        如果一个网页可以随意地访问另外一个网站的资源,那么久有可能在客户完全不知情的情况下出现安全问题。比如以下安全问题:

  1. 用户访问www.mabank.com,登录并进行网银操作,这时cookie都生成并存放在浏览器。
  2. 用户突然想起件事,并迷迷糊糊地访问了一个邪恶的网站 www.xiee.com这时该网站就可以在它的页面中,拿到银行的cookie,比如用户名,登陆token等,然后发起www.mybank.com 的操作。
  3. 如果这时浏览器不予限制,并且银行也没有做响应的安全处理的话,那么用户的信息有可能就这么泄露了。

为什么要跨域?

既然有安全问题,那么为什么又要跨域呢?

有时公司内部有多个不同的子域,比如一个是location.company.com,而应用是放在app.company.com,这时想从app.company.com去访问location.company.com的资源就属于跨域。

解决跨域问题的方法:

  1. 前端解决
  2. 后端解决

跨域资源共享(CORS)

       W3C 的 Web 工作组推荐了一种新的机制,即跨域资源共享(Cross-origin Resource Sharing),简称CORS。其实这个机制就是实现了跨站访问控制,使得安全地进行跨站数据传输成为可能。

       服务器端对于CORS的支持,主要就是通过设置Access-Control-Allow-Origin来进行的。如果浏览器检测到相应的设置,就可以允许ajax进行跨域的访问。

       只需要在后台中加上响应头来允许域请求!在被请求的Response header中加入设置,就可以实现跨域访问了!

       创建过滤器实现后端设置允许跨域访问:

@WebFilter(urlPatterns = "/*")
public class CorsFilter implements Filter {public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)throws IOException, ServletException {System.out.println("跨域过滤器");HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;//允许携带Cookie时不能设置为* 否则前端报错httpResponse.setHeader("Access-Control-Allow-Origin", httpRequest.getHeader("origin"));//允许所有请求跨域httpResponse.setHeader("Access-Control-Allow-Methods", "*");//允许跨域的请求方法GET, POST, HEAD 等httpResponse.setHeader("Access-Control-Allow-Headers", "*");//允许跨域的请求头httpResponse.setHeader("Access-Control-Allow-Credentials", "true");//是否携带cookiefilterChain.doFilter(servletRequest, servletResponse);}
} 

 

http://www.yayakq.cn/news/666850/

相关文章:

  • 如何做电商网站首页北京朝阳区建设工作办公网站
  • 个人网站开发用到的技术少儿编程python课程
  • 兰州市住房建设局网站公司网站经典案例
  • 给个营销型网站沃尔沃公司网站建设
  • 企业网站后台辽宁建设工程信息网进不去怎么办
  • 适合html初学者做的网站在哪里申请域名
  • 做网站是买服务器还是买cdn破解软件库合集资料网址大全
  • 建设网站大约多少钱怎么推广引流客户
  • 如何做外贸品牌网站建设做旅游的网站的目的和意义
  • 怎么判断网站被k常州网站推广招聘
  • 网站建设为什么不给源代码给公司做门户网站多少钱
  • 国家开放大学网站界面设计线上推广团队
  • 网站运营推广怎做重庆百度seo整站优化
  • 网站广告素材重庆 网站备案
  • 怎么做签到网站创新的商城网站建
  • 平谷网站建设服务软件开发网站开发培训
  • 模板网站多少钱一个网站备案时间要多久
  • 包头网站杭州建设工程交易平台
  • 张启亚学做网站网站维护费用怎么收
  • 免费的asp网站广州品牌网站设计开发
  • 今天最新新闻事件报道上海有实力的seo推广咨询
  • 莱阳 网站建设wordpress add_filter
  • 酷炫的网站模板免费下载页面设计成上下两栏
  • 做网站分为哪几个岗位2022年楼市最新政策
  • 如何查网站注册信息wordpress插件主题集成
  • 网站开发程序制作域名备案有专业做外贸的网站吗
  • 开发电子商务网站和开发新闻类网站什么异同往届生做网站编辑
  • 怎样用文本建一个网站开发者选项在哪里打开
  • 桂林做网站公司奉化网站建设
  • 旅游建设网站目的及功能定位wordpress 申请