1. 程式人生 > >ajax跨域請求jsp資料

ajax跨域請求jsp資料

最近的開發中,應工作需要,把java程式碼在了jsp上,而且還需要通過ajax跨域請求這個方法,並且返回資料。遇到了跨域請求 以及contentType錯誤,我把我的程式碼貼出,供大家參考。

html頁面使用jsonp方式跨域請求(注意:請求的網址?callback=?必須得加上,不懂得請自行搜尋jsonp介紹)

<title>獲取liferay登入資訊頁面</title>
</head>
<body>
<form  id= "uploadForm" >
    <input type="button" onclick="upload_file()"
value="獲取使用者名稱和郵箱" style"width=100px;high=50px;margin:20px;">
</form> </body> <script src="lib/jquery/1.9.1/jquery.js"></script> <script type="text/javascript"> function upload_file() { $.getJSON("http://localhost:8080/ajaxSession.jsp?callback=?",function(data){ alert("name:"
+data.name + "\n email:" + data.email); }); }
</script> </html>

jsp程式碼,注意 contentType=”application/x-javascript; charset=UTF-8”。。

//省略jar包
<%@ page language="java" contentType="application/x-javascript; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
    String callback = request
.getParameter("callback"); PrintWriter pw = response.getWriter(); json = "{\"name\":\"zhang\",\"email\":\"123@com\"}"; pw.print(callback + "(" + json + ")"); pw.flush(); pw.close(); %>

僅供參考。