angularjs – 如何修复413 HTTP请求实体太大
发布时间:2020-12-17 07:14:52 所属栏目:安全 来源:网络整理
导读:我有一个项目,我有一个简单的客户端用 angularjs编写,服务器在scala中,在我的客户端我有一个简单的上传按钮,你点击它并选择一个本地文件(csv),当我上传一个特定的csv这有点大,就像我得到的6000行 413 Request entity too large 我上传的js代码是: $scope.up
我有一个项目,我有一个简单的客户端用
angularjs编写,服务器在scala中,在我的客户端我有一个简单的上传按钮,你点击它并选择一个本地文件(csv),当我上传一个特定的csv这有点大,就像我得到的6000行
我上传的js代码是: $scope.upload = function(files) { if (!files || !files.length) { } else { for (var i = 0; i < files.length; i++) { var file = files[i]; Upload.upload({ url: '/uploadFile',file: file }). }).success(function (data,status,headers,config) { }).error(function (data,config) { $scope.showServerError(status,data); }) } } }; 在服务器中是: def uploadFile = Action(parse.multipartFormData) { implicit request => request.body.file("file").fold { BadRequest("Missing file") } { uploadedFile => { val localFile = new File("/tmp/" + uploadedFile.ref.file.getName) Files.copy(uploadedFile.ref.file.toPath,localFile.toPath,StandardCopyOption.REPLACE_EXISTING) localFile.deleteOnExit() val j = Json.parse( ${Crypto.encryptAES(localFile.getAbsolutePath)}}) Ok(j) }} } 需要改变什么才能支持更大的文件? 解决方法
您可以使用
maxLength 正文解析器以字节为单位指定正文的最大大小:
// Allow up to 15MB files... private val uploadParser = parse.maxLength(15*1024*1024,parse.multipartFormData) def uploadFile = Action(uploadParser) { implicit request => ... } 多部分表单数据的默认值为10MB,您也可以通过更改play.http.parser.maxDiskBuffer设置来覆盖它.见docs. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |