jquery跨域Ajax请求

本文介绍了一个使用JSONP实现跨域请求的例子,通过jQuery发起GET请求到服务器,服务器接收参数并返回JSON数据,前端通过指定的回调函数处理这些数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关键:ajax的dataType为jsonp,并且在请求的url中加上"?jsoncallback=?"

前台代码:

Html代码收藏代码
  1. <scripttype="text/javascript"src="jquery-1.7.2.min.js"></script>
  2. <scripttype="text/javascript">
  3. functionRegisterRequest2(){
  4. /*getJSONmethodisokalso...
  5. $.getJSON("http://192.168.1.154:7087/ClusterServer/Rigister?jsoncallback=?",{pwd:'123',username:'tl'},function(json){alert(json.name);}); 
  6. */
  7. $.ajax({
  8. url:"http://192.168.1.154:7087/ClusterServer/Rigister?jsoncallback=?",
  9. type:"GET",
  10. data:{pwd:'123',username:'tl'},
  11. dataType:"jsonp",
  12. success:function(data){
  13. alert(data.name);
  14. },
  15. error:function(a,b,c){
  16. alert("error=="+b);
  17. }
  18. });
  19. }
  20. </script>
  21. <inputtype="button"onclick="RegisterRequest2();"value="StartRequest"/>

后台Servlet代码:

Java代码收藏代码
  1. importjava.io.IOException;
  2. importjavax.servlet.ServletException;
  3. importjavax.servlet.http.HttpServlet;
  4. importjavax.servlet.http.HttpServletRequest;
  5. importjavax.servlet.http.HttpServletResponse;
  6. publicclassRigisterextendsHttpServlet{
  7. @Override
  8. protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)
  9. throwsServletException,IOException{
  10. Stringpwd=req.getParameter("pwd");
  11. Stringusername=req.getParameter("username");
  12. System.out.println("get=="+username+"==="+pwd);
  13. Stringcallback=req.getParameter("jsoncallback");
  14. resp.getWriter().write(callback+"({name:'tzy',phone:'123'})");//参数为json格式
  15. }
  16. @Override
  17. protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)
  18. throwsServletException,IOException{
  19. Stringpwd=req.getParameter("pwd");
  20. Stringusername=req.getParameter("username");
  21. System.out.println("post=="+username+"==="+pwd);
  22. Stringcallback=req.getParameter("jsoncallback");
  23. resp.getWriter().write(callback+"({name:'tzy',phone:'123'})");
  24. }
  25. }

后台返回前台的时候取出jsoncallback回调函数名,将json格式的数据作为函数的参数,整个以字符串的形式返回给前台。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值