2013-01-04 2 views
0

как grails получить файл от xhr? моего АяксGrails получить файл от xhr

var xhr = new XMLHttpRequest() 
xhr.open("POST", "actionGrails", true) 
xhr.setRequestHeader("Cache-Control", "no-cache"); 
xhr.setRequestHeader("X-File-Name", file.fileName); 
xhr.setRequestHeader("X-File-Size", file.fileSize); 
xhr.setRequestHeader("Content-Type", "multipart/form-data"); 
xhr.send(file); 

, когда в моем контроллере

def actionGrails() { 
def f = request.getFile('file') 
println f//get error 
} 

любое решение для этого? спасибо

+0

'xhr.send (file)' недействительный подход. см. [здесь] [1]. [1]: http://stackoverflow.com/questions/6211145/upload-file-with-ajax-xmlhttprequest –

+0

привет Брайен, ТНХ для вас ответ, но как я могу получить доступ к файлу из FormData с grails ?, у меня есть поиск, но всегда есть php-пример, мне нужен пример Grails, спасибо –

+0

, вы можете попробовать изменить принятый ответ по ссылке 'formData.append (« файл », файл);' to' formData.append (" файл ", файл);' для работы с вашим действием. Однако все это предположение. Вы должны отправить сообщение об ошибке, чтобы получить ответы. возможно, также объявление «файла» в вашем клиентском коде. –

ответ

2

Это простое решение: используйте Fine Uploader. Он имеет demo page.

Плагин Grails, который упаковывает библиотеку here.

+0

привет jinzhao, thx u ответ, и ссылку на комплекс, у вас есть ссылки в grails? спасибо –

+0

см. http://grails.org/plugin/ajax-uploader. Я обновил свой ответ. – coderLMN

+0

спасибо за ответ, но мне не нужен плагин, я просто хочу знать, как grails получает params.file из команды ajax/jquery. спасибо –

Смежные вопросы