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

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

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

前台页面:

<html>
	<head>
		<meta charset="UTF-8">
		<title>校园网络打印</title>
		<link rel="stylesheet" type="text/css" href="css/layui.css" rel="external nofollow" />
	</head>
<body bgcolor="#F0F0FF">
<div class='layui-upload-drag' id='test10'>
<i class='layui-icon'>v</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\"}";
 }
}

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

以上这篇在LayUI图片上传中,解决由跨域问题引起的请求接口错误的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。