跨域问题与layui文件上传

年前敲码,遇到了两个问题,加起来弄了2-3天才勉强解决了(效率好慢),这两个问题虽然说是小问题,但对我本人来说还是有必要记录一下。放假后玩傻了,今天才抽时间记录一波。

首先是跨域问题,后台使用的框架是Jfinal,用postman调用接口时,返回数据正常,但是前端在html5调用时,出现了跨域的错误。赶紧百度一下,找到了两种解决方法:

第一种是在pom.xml和web.xml中配置CORS(仅限于maven项目)。

在controller的方法调用前加入

getResponse().addHeader("Access-Control-Allow-Origin","*");即可。

开源中国链接:

https://my.oschina.net/u/3471662/blog/1622348

第二个问题是layui的后台前端框架form表单提交文件的问题,由于需求更改后台需要上传视、音频,在没有上传视、音频文件前,表单可以直接把数据以formdata方式提交到后台,后台可以直接getBean来获取数据,但是当增加了上传视频后(上传的控件是在layui的form表单中),数据竟然不是以formdata方式提交了,而是以一种流媒体的方式提交,请教技术老大后建议我组装成formdata的方式进行提交(虽然前面的视频上传到服务器已经有实例,但我发现最后还是不知道该怎么把form的所有数据组装成formdata的形式),所以用了另外一种方法(在公司前端的提醒下想到的):

就是在上传完视频到服务器后,把上传视频的控件直接清空掉(因为form中已经保存了该视频的路径),再进行上传。Bingo,竟然可以了。

layui社区链接:

http://fly.layui.com/jie/22427/

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180221G01FPC00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券