LayUI图片上传中,由跨域问题引起的请求接口错误

LayUI图片上传中,由跨域问题引起的请求接口错误

在ssm框架整合中,使用layui作为前端页面,拖拽图片上传,填写接口后,后台能够成功接收到数据,但由于页面资源和后台访问地址的不一致(即使域名一致但端口不一致)引起跨域问题,导致接收资源后在前端无法接收到后台返回的数据。
前台页面:

<html>
	<head>
		<meta charset="UTF-8">
		<title>校园网络打印</title>
		<link rel="stylesheet" type="text/css" href="css/layui.css"/>
	</head>
<body bgcolor="#F0F0FF">
<div class='layui-upload-drag' id='test10'>
<i class='layui-icon'></i>"
<p>点击上传,或将文件拖拽到此处</p>
</div>
</body>
        <script src="layui.all.js" type="text/javascript"></script>
        <script  type="text/javascript">
$(function(){
layui.use('upload', function(){
			  var $ = layui.jquery;
			  upload = layui.upload;
			 //拖拽上传
			  upload.render({
			    elem: '#test10',
			    url: 'http://127.0.0.1:8088/file/picture',
			    choose: function(obj){
			    	alert(11111);
			      },
			    done: function(res){
			    	alert(res.code);
			    }
			  });
});
</script>
</html>

后台代码如下:

@Controller
@RequestMapping("/file")
public class FileController {
	
	@RequestMapping(value="/picture",method= {RequestMethod.POST})
	@ResponseBody
	public String upLoad(MultipartFile file,HttpServletResponse response) {
		response.addHeader("Access-Control-Allow-Origin", "*");//解决跨域问题的方法之一,但有弊端
		System.out.println(file.getName());
		System.out.println(file.getSize());
		return "{\"code\":\"0\",\"msg\":\"1\",\"data\":\"111\"}";
	}
}

解决思路:解决跨域问题的方法适用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值