全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Javaweb使用cors完成跨域ajax数据交互

跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。

ajax本身实际上是通过XMLHttpRequest对象来进行数据的交互,而浏览器出于安全考虑,不允许js代码进行跨域操作,所以会警告。

cors

全称:Cross-Origin Resource Sharing

中文意思:跨域资源共享

它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web服务器定义了一种方式,允许网页从不同的域访问其资源。而这种访问是被同源策略所禁止的。CORS系统定义了一种浏览器和服务器交互的方式来确定是否允许跨域请求。 它是一个妥协,有更大的灵活性,但比起简单地允许所有这些的要求来说更加安全。

1、通过Maven引用

cors-filter、<span style="font-family: Arial, Helvetica, sans-serif;">java-property-utils二个jar包,修改pom.xml文件,加入下面内容</span> 

<!-- 跨域问题 --> 
  <dependency> 
  <groupId>com.thetransactioncompany</groupId> 
  <artifactId>cors-filter</artifactId> 
  <version>2.5</version> 
 </dependency> 
 <dependency> 
  <groupId>com.thetransactioncompany</groupId> 
  <artifactId>java-property-utils</artifactId> 
  <version>1.10</version> 
 </dependency>

2、在web.xml里面配置过滤器,使用引入的jar中定义好的过滤器。注意修改cors.allowOrigin节点,如果允许所有站点跨域访问,可以修改为[*],如果是多个站点,可以用[,]分隔配置。

<!-- 跨域问题 --> 
  <filter> 
  <description>跨域过滤器</description> 
  <filter-name>CORS</filter-name> 
  <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class> 
  <init-param> 
   <param-name>cors.allowOrigin</param-name> 
   <param-value>https://127.0.0.1:8380</param-value> 
  </init-param> 
  <init-param> 
   <param-name>cors.supportedMethods</param-name> 
   <param-value>GET, POST, HEAD, PUT, DELETE</param-value> 
  </init-param> 
  <init-param> 
   <param-name>cors.supportedHeaders</param-name> 
   <param-value>Accept, Origin, X-Requested-With, Content-Type, Last-Modified</param-value> 
  </init-param> 
  <init-param> 
   <param-name>cors.exposedHeaders</param-name> 
   <param-value>Set-Cookie</param-value> 
  </init-param> 
  <init-param> 
   <param-name>cors.supportsCredentials</param-name> 
   <param-value>true</param-value> 
  </init-param> 
 </filter> 
 <filter-mapping> 
  <filter-name>CORS</filter-name> 
  <url-pattern>/*</url-pattern> 
 </filter-mapping>

3、通过jQuery跨域调用数据,实例代码如下:

<!DOCTYPE html> 
<html lang="en" xmlns="https://www.w3.org/1999/xhtml"> 
<head> 
 <meta charset="utf-8" /> 
 <title>跨域测试</title> 
 <style type="text/css"> 
  body{ 
   margin:0px auto 0px auto; 
  } 
  .p_container { 
   margin: 0px auto 0px auto; 
   width: 100%; 
   height: 200px; 
  } 
   .p_container > iframe { 
    width: 100%; 
    height: 100%; 
   } 
 </style> 
</head> 
<body> 
 <p> 
 </p> 
 <button id="btn_test">跨域调用</button> 
 <p id="p_show"></p> 
 <script src="jquery-1.8.3.min.js" type="text/javascript"></script> 
 <script type="text/javascript"> 
  $(function () { 
   $('#btn_test').click(function () { 
    //alert('dddd'); 
    //var iframe_main = $("#iframe_main").contents(); 
    //iframe_main.find("#account").val('test'); 
    $.ajax({ 
     url: "https://10.18.25.119:8480/jxfp/index.jsp", 
     type: "GET", 
     dataType: "text", 
     timeout: 10000, 
     xhr: function () {  //这是关键 获取原生的xhr对象 做以前做的所有事情 
      var xhr = jQuery.ajaxSettings.xhr(); 
      xhr.withCredentials = true; 
      return xhr; 
     },      
     success: function (data) { 
      $("#p_show").html(data); 
      //Console.log(data); 
     }, 
     error: function (e) { 
      $("#p_show").html(e.statusText); 
     } 
    }); 
   }); 
  }); 
 </script> 
</body> 
</html>

以上就是是小编分享给大家的Javaweb使用cors完成跨域ajax数据交互的全部内容,希望对大家有所帮助。如果在阅读过程中有什么问题,可以给小编留言,我会及时回复大家的。也希望大家多多支持!


# ajax  # cors  # 跨域  # jquery  # cors跨域  # JavaWeb之Ajax的基本使用与实战案例  # javaweb中ajax请求后台servlet(实例)  # JavaWeb开发之使用jQuery与Ajax实现动态联级菜单效果  # Java Web中Ajax技术使用方法介绍  # 资源共享  # 小编  # 这是  # 是一种  # 我会  # 多个  # 是由  # 可以用  # 中有  # 更大  # 它是  # 给大家  # 它在  # 指的是  # 二个  # 什么问题  # 大家多多  # 它为  # 维基百科  # version 


相关文章: 开源网站制作软件,开源网站什么意思?  零服务器AI建站解决方案:快速部署与云端平台低成本实践  武清网站制作公司,天津武清个人营业执照注销查询系统网站?  深圳网站制作案例,网页的相关名词有哪些?  公司网站制作价格怎么算,公司办个官网需要多少钱?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  文字头像制作网站推荐软件,醒图能自动配文字吗?  5种Android数据存储方式汇总  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  佛山网站制作系统,佛山企业变更地址网上办理步骤?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  如何用虚拟主机快速搭建网站?详细步骤解析  制作旅游网站html,怎样注册旅游网站?  高端建站如何打造兼具美学与转化的品牌官网?  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  如何批量查询域名的建站时间记录?  建站主机功能解析:服务器选择与快速搭建指南  定制建站策划方案_专业建站与网站建设方案一站式指南  网站微信制作软件,如何制作微信链接?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  如何通过VPS搭建网站快速盈利?  无锡营销型网站制作公司,无锡网选车牌流程?  建站之星云端配置指南:模板选择与SEO优化一键生成  长沙做网站要多少钱,长沙国安网络怎么样?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  岳西云建站教程与模板下载_一站式快速建站系统操作指南  洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  建站之星如何实现网站加密操作?  在线教育网站制作平台,山西立德教育官网?  建站之星如何取消后台验证码生成?  行程制作网站有哪些,第三方机票电子行程单怎么开?  在线制作视频网站免费,都有哪些好的动漫网站?  如何在Windows虚拟主机上快速搭建网站?  广平建站公司哪家专业可靠?如何选择?  如何在Ubuntu系统下快速搭建WordPress个人网站?  如何在万网自助建站平台快速创建网站?  小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  广德云建站网站建设方案与建站流程优化指南  seo网站制作优化,网站SEO优化步骤有哪些? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。