2013-01-04 71 views
0

grails如何從xhr獲取文件? 我的AJAXGrails從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

喜布賴恩,THX爲您回覆,但我怎麼可以訪問FORMDATA與文件grails ?,我有搜索,但總是php的例子,我需要grails的例子,謝謝 –

+0

你可以嘗試改變鏈接接受的答案,'formData.append(「thefile」,文件);''formData.append(「文件「,文件);'與你的行動一起工作。儘管如此,所有這些都是猜測。你應該發佈你得到的錯誤,以獲得更好的答案。也可能是客戶端代碼中'文件'的聲明。 –

回答

2

這裏是一個簡單的解決方案:使用Fine Uploader。它有一個demo page

封裝庫的Grails插件是here

+0

hi jinzhao,thx u回覆,u引用它是複雜的,你有任何在Grails中的參考?謝謝 –

+0

請參閱http://grails.org/plugin/ajax-uploader。我已經更新了我的答案。 – coderLMN

+0

謝謝你的回答,但我不需要插件,我只是想知道grails如何從ajax/jquery命令獲得params.file。謝謝 –