跨域Ajax的实现

本文提供 ajax 远程请求数据的例子。

 这里首先要知道 JSONP,可以参考:http://hanchaohan.blog.51cto.com/2996417/1291927

前台 发送端:

 1 <html>
 2 <head>
 3     <title>Remote Ajax</title>
 4   <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
 5   <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
 6   <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
 7   
 8   <script>
 9       $(document).ready(function() {
10             $("#remoteAjaxBtn" ).click(function(){
11                  $.ajax({
12                             type: "POST",
13                             data:{employee_ID:"C1011"},
14                             url : "http://这里写你的host IP:8080/MvnSpringMVC/test.do",
15                             dataType : "jsonp",
16                             jsonp: "callback", 
17                             error : function(e,ex){
18                                 alert("error");    
19                             },
20                             success : function(data) {
21                                 alert(data.msg);
22                             }
23                         });
24             })
25       });
26   </script>
27 </head>
28 <body>
29  
30 <div id="draggable" class="ui-widget-content">
31    <button id="remoteAjaxBtn">send ajax</button>
32   
33 </div>
34  
35 </body>
36 </html>

后台Controler

 1 package cc.monggo.web.controller;
 2 
 3 import java.io.IOException;
 4 
 5 import javax.servlet.ServletException;
 6 import javax.servlet.http.HttpServletRequest;
 7 import javax.servlet.http.HttpServletResponse;
 8 
 9 import org.springframework.stereotype.Controller;
10 import org.springframework.ui.ModelMap;
11 import org.springframework.web.bind.annotation.RequestMapping;
12 
13 @Controller
14 public class testIVO {
15     @RequestMapping("test.do")
16     public void testFnc(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap)
17             throws ServletException, IOException {
18         String strEmployee_FK = request.getParameter("employee_ID");
19         System.out.println("employee_ID: " + strEmployee_FK);
20         String callback = request.getParameter("callback");
21         response.setContentType("text/javascript");
22         response.setCharacterEncoding("utf-8");
23         response.getWriter().write(callback + "({msg:'success'})");
24     }
25 }

运行结果

原文地址:https://www.cnblogs.com/Lynn-Sea/p/3425162.html