阅读来自ipad的Grails中的图像

时间:2012-09-14 17:12:15

标签: grails grails-controller

我对这种事情都很陌生。读取客户端发送的图像是“application / x-www-form-urlencoded” 这是我从该客户端收到的图像,这是一个ipad应用程序。它将图像附加到http正文并使用其他参数使用?id = 10等将其发送到服务器。 问题是......如何从身体中获取该图像并写入文件系统?

现在我已经写了一个单独的servlet来读取这个图像(使用request.getInputStream())并读取它的字节然后写入文件系统,这是不好的(上下文变得不同)。

在Grails控制器中可以做什么,以便它可以轻松读取图像。请帮帮我。对我来说,它是高度优先的。 感谢

1 个答案:

答案 0 :(得分:0)

Grails具有文件上传支持。让我们举一个例子来简化事情。

在您的视图中,您将看到如下形式:

<g:form action="save" method="post" enctype="multipart/form-data">
    <input type="file" name="myFile" />
</g:form>

在您的控制器中,您可以使用以下内容:

class FileController {
    def save = {
        def f = request.getFile('myFile')
        if(!f.empty) {
            def fileName = 'file_xyz'
            f.transferTo( new File('imgs/' + fileName) )
        }
        redirect(action:show)
    }
}

如果你需要操纵de image(缩放它,裁剪它......),我建议使用ImgScalr。看这里: http://www.thebuzzmedia.com/software/imgscalr-java-image-scaling-library/