how to get an arbitrary file from an HTTP request

2019-06-10 13:09发布

I am trying to set up a web service in grails that can accept a file. How do I get the file from the request?

I am testing this with something like

curl -d somefile.tar http://localhost:8080/MyWebS/fileWS

and my method looks like the following:

def index = {
    switch(request.method){
    case "POST":
    render "Ingesting file\n"
    request.each {
    println("--> " + it)
    }
    def uploadedFile = request.getFile() //<--this is the line that doesnt work..what should it be?
    File f=new File('c:/dev/newfile.tar');
    uploadedFile.transferTo(f);

    break
    }
}

1条回答
兄弟一词,经得起流年.
2楼-- · 2019-06-10 13:42

What happens if you try

curl -F file=@somefile.tar http://localhost:8080/MyWebS/fileWS

And then on the grails side

def uploadedFile = request.getFile( 'file' )
查看更多
登录 后发表回答