我在Grails中创建了一个文件上传,但是找不到使用Content-Type:multipart/form-data
请求的方法。请求正在发送
Content-Type:application/x-www-form-urlencoded
。
这是我的表格
<g:uploadForm controller='asset' action='upload'>
<label>Select file(s) to upload</label>
<input type='file' id='fileUpload' name='filesToUpload' multiple />
<g:submitButton name="upload" value="Upload"/>
</g:uploadForm>
在Config.groovy中,grails.mime.types
包含multipartForm: 'multipart/form-data'
和grails.web.disable.multipart=false
。我使用的是Spring Security,AssetsController
是@Secured
。
如何通过Content-Type:multipart/form-data
发送请求?
答案 0 :(得分:1)
如果<g:uploadForm >
- 标签不是手册中描述的内容:
http://grails.github.io/grails-doc/2.5.x/ref/Tags/uploadForm.html
与标准表单标记相同,只是它自动将enctype属性设置为“multipart / form-data”。
然后你可以尝试使用普通<g:form >
- 标签并添加enctype属性,甚至根本不使用标签。一个简单的HTML-Upload也可以使用:
<form action="${g:createLink controller:'', action:''}" method="post" enctype="multipart/form-data">
<input type="file" name="fileupload">
<input type="submit" name="upload">
</form>