У меня возникли проблемы с управлением звуковым файлом, отправленным кордорой на сервер grails, чтобы преобразовать его в байты, потому что я не знаю, как восстановить аудио, отправленное на мой 'audioDeal "метод, я попытался с помощью params.fileName
, params.options
...: CordovaКак управлять файлом, отправленным на мои графы
ft.upload(currentPath, "http://blablabla:8080/audio/audioDeal", function (result) {
},
function (error) {
console.log('Error uploading file ' + currentPath + ': ' + error.code);
},
{ fileName: currentName });
Мой домен Файл имеет байт [] аудиофайл. Мой «данные» будет мой объект, должен содержать имя, размер и т.д.
def audioDeal() {
if (params.data) {
def data = params.data
def audio = new Test(audioFile: data.getBytes(), audio_name: data.name, id: data.id);
audio.save(flush: true);
println('ok')
} else println('not ok')
}
Мой URL отображения:
"/audio/" {
controller = "testRest"
action = [POST: "audioDeal", GET: "audioDeal", PUT: "audioDeal"]
}
Делая это, это правильный способ хранения файла в массив байтов? Любые комментарии, советы, объяснения по этому поводу, было бы неплохо ...
http://grails.org/doc/2.2.1/guide/theWebLayer.html#uploadingFiles рассказывает вам, как это сделать. – TomW
@TomW Я не использую поддержку Grails 'MultipartHttpServletRequest' через' .gsp'. – fsi
MultipartHttpServletRequest должен работать даже без .gsp-cordova, который должен отправлять этот запрос, поэтому код контроллера в документах должен работать, я думаю (например, using request.getFile ('file') - я думаю, что «файл» - это ключ по умолчанию, отправленный Кордоной). – TomW