97国产精品视频人人做人人爱,3344在线观看无码,成年人国产视频,欧美日一级片,在线看AV天堂,高清无码一本到东京热,欧美一级黄片一区2区,免费又爽又刺激高潮网址

Http訪問跨域解決

2018-3-23    seo達人

如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

一、跨域科普

跨域,即跨站HTTP請求(Cross-site HTTP request),指發起請求的資源所在域不同于請求指向資源所在域的HTTP請求。

二、如何產生跨域

當使用前后端分離,后端主導的開發方式進行前后端協作開發時,常常有如下情景:

    a、后端開發完畢在服務器上進行部署并給前端API文檔。
    b、前端在本地進行開發并向遠程服務器上部署的后端發送請求。
    c、在這種開發過程中,如果前端想要一邊開發一邊測試接口,就需要使用跨域的方式。

三、解決方案

1、JQuery+ajax+jsonp 跨域訪問

Jsonp(JSON with Padding)是資料格式 json 的一種“使用模式”,可以讓網頁從別的網域獲取資料。

下面給出例子:

html 前端代碼:

[html] view plain copy
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">    
  2. <html>    
  3. <head>    
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">    
  5. <title>Insert title here</title>    
  6. <script type="text/javascript" src="resource/js/jquery-1.7.2.js"></script>    
  7. </head>    
  8. <script type="text/javascript">    
  9. $(function(){       
  10.  /*    
  11.  //簡寫形式,效果相同    
  12.  $.getJSON("http://app.example.com/base/json.do?sid=1494&busiId=101&jsonpCallback=?",    
  13.          function(data){    
  14.              $("#showcontent").text("Result:"+data.result)    
  15.  });    
  16.  */    
  17.  $.ajax({    
  18.      type : "get",    
  19.      async:false,    
  20.      url : "http://app.example.com/base/json.do?sid=1494&busiId=101",    
  21.      dataType : "jsonp",//數據類型為jsonp    
  22.      jsonp: "jsonpCallback",//服務端用于接收callback調用的function名的參數    
  23.      success : function(data){    
  24.          $("#showcontent").text("Result:"+data.result)    
  25.      },    
  26.      error:function(){    
  27.          alert('fail');    
  28.      }    
  29.  });     
  30. });    
  31. </script>    
  32. <body>    
  33. <div id="showcontent">Result:</div>    
  34. </body>    
  35. </html>    

服務器端:

[java] view plain copy
  1. import java.io.IOException;    
  2. import java.io.PrintWriter;    
  3. import java.util.HashMap;    
  4. import java.util.Map;    
  5. import javax.servlet.http.HttpServletRequest;    
  6. import javax.servlet.http.HttpServletResponse;    
  7. import net.sf.json.JSONObject;    
  8. import org.springframework.stereotype.Controller;    
  9. import org.springframework.web.bind.annotation.RequestMapping;    
  10.      
  11. @Controller    
  12. public class ExchangeJsonController {    
  13.  @RequestMapping("/base/json.do")    
  14.  public void exchangeJson(HttpServletRequest request,HttpServletResponse response) {    
  15.     try {    
  16.      response.setContentType("text/plain");    
  17.      response.setHeader("Pragma""No-cache");    
  18.      response.setHeader("Cache-Control""no-cache");    
  19.      response.setDateHeader("Expires"0);    
  20.      Map<String,String> map = new HashMap<String,String>();     
  21.      map.put("result""content");    
  22.      PrintWriter out = response.getWriter();         
  23.      JSONObject resultJSON = JSONObject.fromObject(map); //根據需要拼裝json    
  24.      String jsonpCallback = request.getParameter("jsonpCallback");//客戶端請求參數    
  25.      out.println(jsonpCallback+"("+resultJSON.toString(1,1)+")");//返回jsonp格式數據    
  26.      out.flush();    
  27.      out.close();    
  28.    } catch (IOException e) {    
  29.     e.printStackTrace();    
  30.    }    
  31.  }    
  32. }    

2、通過注解的方式允許跨域

在Controller類或其方法上加@CrossOrigin注解,來使之支持跨域。

舉例:
[java] view plain copy
  1. @CrossOrigin(origins = "*", maxAge = 3600)  
  2. @RestController  
  3. @RequestMapping("/User")  
  4. public class UserController {  
  5. }  

其中origins為CrossOrigin的默認參數,即跨域來源,*即任何來源,也可以是其他域名。即可以以以下形式:

[java] view plain copy
  1. @CrossOrigin("http://test.com")  
  2. @CrossOrigin(origins="http://test.com",maxAge=3600)  

該注解用于方法上,寫法相同,處理時,SpringMVC會對類上標簽和方法上標簽進行合并。

3、通過配置文件的方式允許跨域

在web.xml中添加如下配置:

[html] view plain copy
  1. <filter-mapping>   
  2.     <filter-name>CorsFilter</filter-name>   
  3.     <url-pattern>/*</url-pattern>   
  4. </filter-mapping>  
使用這個Filter即可讓整個服務器全局允許跨域。

藍藍設計www.0391cbd.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務


日歷

鏈接

個人資料

藍藍設計的小編 http://www.0391cbd.com

存檔

主站蜘蛛池模板: 丰满人妻中出白浆| 在线观看免费黄色网址| 免费视频在线2021入口| 色综合五月| 亚洲天堂免费| 久久这里只有精品23| 女人毛片a级大学毛片免费| 性视频久久| 国产又粗又猛又爽| 欧美特级AAAAAA视频免费观看| 亚洲清纯自偷自拍另类专区| 日本午夜在线视频| 亚洲清纯自偷自拍另类专区| 国产免费自拍视频| 欧美日本中文| 免费va国产在线观看| 亚洲人成网18禁| 天天婬欲婬香婬色婬视频播放| 亚洲综合在线最大成人| 黄片在线永久| 亚洲视频免费在线看| 久草视频一区| 国产91熟女高潮一区二区| 国产亚洲欧美在线视频| 57pao国产成视频免费播放| 国产精品美女免费视频大全| 国产尤物在线播放| 色有码无码视频| 欧美日韩导航| 伊人欧美在线| 久久综合伊人 六十路| 草草影院国产第一页| 久视频免费精品6| 国产剧情一区二区| 免费人成视频在线观看网站| 天天综合亚洲| 欧美一级专区免费大片| 久操中文在线| 久久青草精品一区二区三区| 国产精品香蕉在线| 免费看久久精品99| 国产系列在线| 伊伊人成亚洲综合人网7777| 中国一级特黄视频| 日韩天堂在线观看| 久久综合一个色综合网| 亚洲一区二区无码视频| 欧美日韩精品一区二区视频| 久久久精品无码一区二区三区| 欧美成人午夜在线全部免费| 精品国产aⅴ一区二区三区 | 午夜视频在线观看免费网站| 亚洲人在线| 一级毛片免费播放视频| 亚洲美女一区二区三区| 国产精品亚洲欧美日韩久久| 国国产a国产片免费麻豆| 99久久无色码中文字幕| 日韩高清一区 | 久久婷婷六月| 色婷婷色丁香| 亚洲综合香蕉| 伊人大杳蕉中文无码| 亚洲国产成熟视频在线多多| 国产精品永久久久久| 中美日韩在线网免费毛片视频| 久久婷婷六月| 午夜影院a级片| 99中文字幕亚洲一区二区| 国产欧美视频一区二区三区| www.91在线播放| 亚洲视频免| 国产91透明丝袜美腿在线| 亚洲欧美日韩久久精品| 中文字幕久久亚洲一区| 亚洲国产天堂在线观看| 一本一道波多野结衣av黑人在线| 免费A级毛片无码无遮挡| 免费高清a毛片| 日韩国产欧美精品在线| 国产精品成人免费视频99| 91极品美女高潮叫床在线观看|