如何创建并上传视频以解析服务器?
问题描述:
我可以使用解析服务器将图像文件上传到S3。 (通过从base64图像数据创建解析文件并在解析文件上执行save())如何创建并上传视频以解析服务器?
如何为视频文件做同样的事情?我正在使用打字稿在Ionic 2应用程序中使用parse-server js库。下面的代码适用于图像。
let file = new Parse.File("thumbnail", { base64: imageData });
file.save().then(() => {
// The file has been saved to Parse.
console.log("File uploaded....");
}, (error) => {
// The file either could not be read, or could not be saved to Parse.
console.log("File upload failed.");
});
在视频文件的情况下,我有从cordova媒体捕获回调接收到的文件位置。帮助我上传视频文件。
谢谢
答
这是我的解决方案经过几天的研究。 它适用于iphone。
重要说明是这样的: data = data.replace(“quicktime”,“mov”);
var options = { limit: 1, duration: 30 };
navigator.device.capture.captureVideo(function(files){
// Success! Audio data is here
console.log("video file ready");
var vFile = files[0];
console.log(vFile.fullPath);
///private/var/mobile/Containers/Data/Application/7A0069EB-F864-438F-A685-A0DAE97F8B2D/tmp/capture-T0x144510b50.tmp.GfXOow/capturedvideo.MOV
self.auctionvideo = vFile.fullPath; //localURL;
console.log(self.auctionvideo);
var fileReader = new FileReader();
var file;
fileReader.onload = function (readerEvt) {
var data = fileReader.result;
data=data.replace("quicktime","mov");
console.log(data);
//data:video/quicktime;base64,AAAAFGZ0
console.log(data.length);
self.auctionvideo=data;
self.videofile = {base64:data};
};
//fileReader.reasAsDataURL(audioFile); //This will result in your problem.
file = new window.File(vFile.name, vFile.localURL,
vFile.type, vFile.lastModifiedDate, vFile.size);
fileReader.readAsDataURL(file); //This will result in the solution.
// fileReader.readAsBinaryString(file); //This will result in the solution.
},
function(error){
},
options);
你到底是怎么解决的?我正在尝试新的Parse.File(“name”,{base64:data}),但它的抛出错误在同一行。 – InfinitePrime