このangularjs html5アップロードの例でJSFiddleにドロップされたファイルが欲しいです:
http://jsfiddle.net/danielzen/utp7j/
grails コントローラーによってバックエンドにアップロードされます。これを達成しようとしているときに、単純な grails コントローラーを作成しました。
class UploadController {
def index() {
if (request instanceof MultipartHttpServletRequest){
for(filename in request.getFileNames()){
MultipartFile file = request.getFile(filename)
String newFileName = UUID.randomUUID().toString() + file.originalFilename.substring(file.originalFilename.lastIndexOf("."))
file.transferTo(new File("/home/myuser/temp/$newFileName"))
}
}
render "ok"
}
}
次に、grails コントローラーに対して ajax XmlHttpRequest2 POST を開きます。
xhr.open("POST", "http://localhost:8080/app/upload")
しかし、grails コントローラーはリクエストを MultipartHttpServletRequest にキャストできません。これはおそらく、この ajax による grails コントローラーの呼び出し方法が multipart/form-data によるアップロード方法を使用していないためです。enctype multipart/form-data の xhr のヘッダーを無駄に設定しようとしました。
現時点では完全に立ち往生しており、grailsコントローラーでアップロードされたファイルを処理する方法を知りたいです