在一个前后端分离的项目中,遇到了前台ajax请求但是后台武响应数据,改来改去也是没有结果,后来请教他人,提示说可能是ajax跨域问题,然后就按照这个思路解决问题。
使用jQuery的ajax方法中有datatype响应数据类型可以是jsonp格式就可以解决跨域问题。
讲过查找资料发现,json和jsonp的格式是不一样的,jsonp返回的是一个callback格式的js语句。
因为js不能跨域请求,但是js可以跨域加载js文件。
注意使用jsonp只支持get请求。
在后台代码我可以先将数据转为json格式之后,用callback在json外部在套一层,就变成了jsonp格式。拼接例如:String result=callback+"("+json+");" ; 然后返回给前台页面数据,前台即可响应到后台数据。
按照这个思路即可解决简单的解决ajax的跨域问题了。
互相学习,共同进步:) 转载请注明出处谢谢。