как сохранить файл BLOB-объекта с помощью carrierwave в рельсах - PullRequest
0 голосов
/ 15 марта 2019

Итак, у меня есть требование, когда я записываю видео и сохраняю его в базе данных, запись видео работает нормально, единственное, что он генерирует файл BLOB-объектов, затем я использую js для отправки файла BLOB-объектов на сервер. , Это мои параметры

{"testqwe"=>{"attr"=>"blob:http://localhost:3000/6f12f123-b1d0-7bfc-6b15-d3b54341946"}, "controller"=>"myControler", "action"=>"test"}

У меня есть загрузчик, но он ничего не сохраняет.

так, как я могу сохранить это, используя carierwave, в мою базу данных?

вот мой javascript

mediaRecorder.onstop = (ev) ->
        blob = new Blob(chunks, 'type': 'video/mp4;')
        chunks = []
        videoURL = window.URL.createObjectURL(blob)
        vidSave.src = videoURL
        $.ajax
          type: 'POST'
          content_type: "video/webm"
          url: '/test'
          enctype: "multipart/form-data"
          data: testqwe: attr: videoURL
        return

1 Ответ

0 голосов
/ 15 марта 2019

кто-нибудь еще пытается выяснить это, вы можете обратиться по этой ссылке

Как передать URL-адрес BLOB-объекта в рельсы методом ajax

mediaRecorder.onstop = (ev) ->
        blob = new Blob(chunks, 'type': 'video/mp4;')
        chunks = []
        videoURL = window.URL.createObjectURL(blob)
        vidSave.src = videoURL

        formData = new FormData
        formData.append('testqwe[attr]', blob);

        $.ajax
          type: 'POST'
          url: '/test'
          processData: false
          contentType: false
          data: formData
        return

Отправка и сохранение аудио / видео данных в виде файла

...