我正在通过jquery ajax实现文件uplaod但是我无法对控制器端的数据做些什么。我得到了参数,但不是文件,在这个例子中是一个jpeg。数据在请求有效负载中。
我的问题出在服务器端。如何在服务器端获取文件?
@Secured(['ROLE_USER', 'ROLE_ADMIN', 'ROLE_PARTNER', 'ROLE_READ_ONLY', 'ROLE_USER_PAYING'])
def fileupload () {
println "---------------------------------------------------"
params.each{
println it.key +"="+ it.value
}
request.getHeaderNames().each{
println (it)
}
render("OK")
}
这是我收到的输出:
---------------------------------------------------
filename=1506368_10152113826431683_327028558_o.jpg
apiKey=c7937acaf6d5411d8920d194dc48c041
action=fileupload
controller=post
host
connection
content-length
...
如何在控制器中获取文件?
答案 0 :(得分:0)
我正在做同样的事情,并在控制器中使用request.getInputStream()
来获取二进制数据。这实际上来自ServletRequest
界面 - 请参阅http://docs.oracle.com/javaee/7/api/javax/servlet/ServletRequest.html#getInputStream--