Jquery使用jsonp跨域访问

强大的Jquery从1.2开始就支持jsonp,今天我们利用servlet当后台做一个小测试。

前端javascript(使用jsonpcallback作为回调函数,此处的success没有作用):

function loadJsonP(){
    	$.ajax({
             url:'http://192.168.28.128:8080/JsonPDemo/servlet/JsonPServlet?callback=jsonpcallback',
             dataType:"jsonp",
             success:function(data){
                 alert(data);
             }
        });
    }
    function jsonpcallback(data){
    	alert(data[0]['name']);
    }

后台(获取前台jsonp的回调函数,输出jsonpcallback(...)):

public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		response.setContentType("text/html");
		response.setCharacterEncoding("utf-8");
		PrintWriter out = response.getWriter();
		String jsonp = request.getParameter("callback");
		String str = "[{'id':'1','name':'测试1'},{'id':'2','name':'测试2'}]";
		str = jsonp + "(" + str + ")";
		out.println(str);
		out.flush();
		out.close();
	}

细心的朋友发现jsonp并不是什么牛逼的技术,他只是在回调时把json字符串放到回调函数里作为参数,然后让前端调用。但不管怎样,jsonp确实是解决跨域访问的一个巧妙方法。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CodingToDie

使用Vue完成前后端分离开发(三)

可以在控制台运行 python manage.py startapp member

12620
来自专栏C语言C++游戏编程

抖音很火的告白编程程序,C语言一样也能做

最近抖音上火了一个由小伙伴自己制作的一个表白代码,很多小伙伴都在问这个表白代码是怎么写的?大家都知道是使用vbs实现的!虽说小编也承让VBS实现更简单,但是如果...

1.7K20
来自专栏为数不多的Android技巧

请不要滥用SharedPreference

SharedPreference是Android上一种非常易用的轻量级存储方式,由于其API及其友好,得到了很多很多开发者的青睐。但是,SharedPrefer...

30640
来自专栏java一日一条

深入理解 Java 中的 try-with-resource

众所周知,所有被打开的系统资源,比如流、文件或者Socket连接等,都需要被开发者手动关闭,否则随着程序的不断运行,资源泄露将会累积成重大的生产事故。

18420
来自专栏架构之路

spark 2.3 导致driver OOM的一个SparkPlanGraphWrapper源码的bug

长话短说,我们部门一个同事找到我,说他的spark 2.3 structured streaming程序频繁报OOM,从来没有坚持过超过三四天的,叫帮看一下。 ...

15220
来自专栏Danny的专栏

Entity Framework学习笔记——EF简介(一篇文章告诉你什么是EF)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

32330
来自专栏小白安全

绕过软WAF攻略

现在软waf较为多,就在今年夏天苦逼挖洞的日子里经常遇到360主机卫士,安全狗,云锁之类的软waf进行拦截,经常碰到如下拦截提示: ? ? ? 看到以上...

85050
来自专栏谭广健的专栏

devexpress CLR20r3错误记录

好久没写过winform程序了,用devexpress写了个小工具,连一个本地的数据库,感觉不会出什么异常,连接时就没加捕获,调通之后就没管,因为特殊需求,需要...

27040
来自专栏超然的博客

BAT 前端开发面经 —— 吐血总结

最近暑期实习招聘已经开始,个人目前参加了阿里的内推及腾讯和百度的实习生招聘,在此总结一下 一是备忘、总结提升,二是希望给大家一些参考 其他面试及基础相关可以...

29720
来自专栏大内老A

[WCF REST] 一个简单的REST服务实例

微软在WCF 3.5中就通过提供基于Web HTTP的编程模式使我们很容易地创建基于REST的服务,WCF 4.0中对此进行了较大的改进。为了让读者对REST在...

18660

扫码关注云+社区

领取腾讯云代金券