今天用react其中一个Form的提交函数是遇上了jsonp的跨域问题。jsonp百度描述原理就是动态创建一个script的dom,并设置src的值为url。
并将dom添加到head标签后面。
后来我又看了下jquery的jsonp方法:
$.ajax(
{
dataType:"jsonp",
jsonpCallback:"xxx",
url:url,
data:data
}
这就疑惑了,这是什么鬼,但后来看说实现是动态创建script的方法。
另一种说是服务端加上
response.setContextType("text/javascript");//没试过
一般服务端只需
out.print(request.getParameter("callback")+"("+data+")");
就行了。