AJAX跨域“Access-Control-Allow-Origin” JAVA WEB个人解决方法

ajax跨域访问是一个老问题了,解决方法很多,比较常用的是JSONP方法,JSONP方法是一种非官方方法,存在各种问题,大家可以自行百度。

我们项目使用Spring Web MVC,如果你们没有用Spring Web MVC也不用担心,因为方法是通用的。


解决方法:通过设置Access-Control-Allow-Origin来实现跨域访问,需要通过response设置。

Access-Control-Allow-Origin:* 表示允许任何域名跨域访问,如果需要指定域名,大家自行百度学习,我们的项目是手机客户端页面,用不上。


Spring Web MVC下面完整例子

@Controller
@RequestMapping("/LuozhuangMobileControl.do")
public class LuozhuangMobileControl{

/**
	 * 用户登录
	 * 
	 * @param request
	 * @return
	 */
	@RequestMapping(params = "loginCheck")
	@ResponseBody
	public Object login(HttpServletRequest request, HttpServletResponse response) {
		Object j;
		//这里处理你的业务
		response.setHeader("content-type", "application:json;charset=utf8");
		response.setHeader("Access-Control-Allow-Origin", "*");
		response.setHeader("Access-Control-Allow-Methods", "POST");
		response.setHeader("Access-Control-Allow-Headers", "x-requested-with,content-type");
		return j;
	}
}

上面是我们项目中使用的方法, 如有更佳方法,欢迎大家斧正。

猜你喜欢

转载自blog.csdn.net/luozhuang/article/details/78860857