2015-03-19 1 views
2

Я создал загрузку файла в Grails, но я не могу найти способ получить запрос на использование Content-Type:multipart/form-data. Запросы отправляются с Content-Type:application/x-www-form-urlencoded.Загрузка файла Grails не с использованием правильного типа контента

Это моя форма

 <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?

ответ

1

если <g:uploadForm > -tag не то, что описано в руководстве:

http://grails.github.io/grails-doc/2.5.x/ref/Tags/uploadForm.html

Идентичный стандартной форме тега, за исключением того, что устанавливает атрибут ENCTYPE в «многокомпонентные/форма-данные» автоматически ,

, то вы можете попробовать использовать обычный <g:form > -Tag и добавить атрибут enctype или даже не использовать тег вообще. Также будет работать простая HTML-загрузка:

<form action="${g:createLink controller:'', action:''}" method="post" enctype="multipart/form-data"> 
    <input type="file" name="fileupload"> 
    <input type="submit" name="upload"> 
</form>