使用formdata上传视频

Der*_*rek 1 multipartform-data react-native

有没有人通过React Native Formdata()成功上传了一个视频?下面的代码尝试从相机胶卷URI上传.mov文件,但实际上只上传了视频的第一帧(JPEG).这是什么问题?

var movVideo = {
  uri: uriFromCameraRoll,
  type: 'video/quicktime',
  name: 'something.mov',
};

var body = new FormData();
body.append('video', movVideo);
body.append('title', 'A beautiful video!');

fetch('https://mysite/upload_asset', {
  method: "POST",
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'multipart/form-data'
  },
  body: body,
}).then((response) => response.json())
  .then((responseJson) => {
    //only the first frame of the video got uploaded
    console.log(responseJson);
});
Run Code Online (Sandbox Code Playgroud)

ext*_*con 5

有同样的问题.看起来React Native不会为包含资产库URI的视频返回正确的流.图片似乎工作正常.在提交问题之前,我需要深入挖掘.

我建议你看看react-native-fetch-blob,它提供了一个改进的fetchBlof支持polyfill.这个实现很好地处理来自相机胶卷的视频.此外,使用此模块所需的更改是最小的(包括polyfill,使用RNFetchBlob.wrap包装URI).