最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java利用cors實現(xiàn)跨域請求實例

 更新時間:2017年05月27日 08:17:33   作者:_小凱  
本篇文章主要介紹了Java利用cors實現(xiàn)跨域請求實例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

由于ajax本身實際上是通過XMLHttpRequest對象來進行數(shù)據(jù)的交互,而瀏覽器出于安全考慮,不允許js代碼進行跨域操作,所以會警告

 網(wǎng)站開發(fā),在某些情況下需要用到跨域。

什么是跨域?

跨域,指的是瀏覽器不能執(zhí)行其他網(wǎng)站的腳本。它是由瀏覽器的同源策略造成的,是瀏覽器對JavaScript施加的安全限制。

ajax本身實際上是通過XMLHttpRequest對象來進行數(shù)據(jù)的交互,而瀏覽器出于安全考慮,不允許js代碼進行跨域操作,所以會警告。

常見解決跨域的方式

  1. script標簽
  2. iframe
  3. jsonp
  4. 服務端中轉請求
  5. cors

今天的主角cors

全稱:Cross-Origin Resource Sharing

中文意思:跨域資源共享

它在維基百科上的定義是:跨域資源共享(CORS )是一種網(wǎng)絡瀏覽器的技術規(guī)范,它為Web服務器定義了一種方式,允許網(wǎng)頁從不同的域訪問其資源。而這種訪問是被同源策略所禁止的。CORS系統(tǒng)定義了一種瀏覽器和服務器交互的方式來確定是否允許跨域請求。 它是一個妥協(xié),有更大的靈活性,但比起簡單地允許所有這些的要求來說更加安全。

下面就說一下cors在java tomcat下如何配置

首先下載jar包

cors-filter與java-property-utils

<!-- https://mvnrepository.com/artifact/com.thetransactioncompany/cors-filter -->
<dependency>
  <groupId>com.thetransactioncompany</groupId>
  <artifactId>cors-filter</artifactId>
  <version>2.5</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.thetransactioncompany/java-property-utils -->
<dependency>
  <groupId>com.thetransactioncompany</groupId>
  <artifactId>java-property-utils</artifactId>
  <version>1.10</version>
</dependency>

修改web.xml

增加以下代碼(最好放在其他filter前邊)

<filter>     
  <filter-name>CORS</filter-name> 
  <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class> 
  <init-param> 
   <param-name>cors.allowOrigin</param-name> 
    <param-value>*</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>

jQuery請求示例

$.ajax("url", {
  type: "POST",
  xhrFields: {
    withCredentials: true,
    useDefaultXhrHeader: false
  },
  data: {
    type: "test"
  },
  dataType: 'json',
  crossDomain: true,
  success: function(data, status, xhr) {
   console.log(data);
  }
});

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

最新評論

灵丘县| 文化| 彭水| 平安县| 大化| 扬中市| 珠海市| 大荔县| 涿鹿县| 清丰县| 乐山市| 温泉县| 澳门| 涿鹿县| 五莲县| 湖南省| 舞阳县| 和顺县| 寿阳县| 乐至县| 杨浦区| 应用必备| 曲沃县| 左云县| 保靖县| 康平县| 沙坪坝区| 河间市| 扶沟县| 长丰县| 平谷区| 普兰县| 襄城县| 巴里| 山阳县| 桂平市| 高安市| 灵寿县| 赣榆县| 应城市| 威宁|