首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用tus-js-client上传到vimeo

使用tus-js-client上传到vimeo
EN

Stack Overflow用户
提问于 2021-01-05 20:15:52
回答 1查看 657关注 0票数 2

我对tus是个新手,我正在使用tus-js-client。我遵循这个链接https://github.com/tus/tus-js-client/blob/master/docs/usage.md#example-upload-to-vimeo中的示例。

我能够成功地在Vimeo上上传视频,但我想提前设置标题/名称和描述。而且,可选的onSuccess函数不会返回任何内容。我想得到的视频细节,我已经成功上传了像剪贴画。

在tus-js-client上可以做这些事情吗?下面是我的代码以供参考。

代码语言:javascript
复制
function UploadVideoTusJs(uploadUrl, videoFile) {
    var upload = new tus.Upload(videoFile.files[0], {
        uploadUrl: uploadUrl,
        metadata: {
            name: videoFile.files[0].name, // not working
            description: "Test", // not working
        },
        onError: function (error) {
            console.log("Failed because: " + error);
        },
        onProgress: function (bytesUploaded, bytesTotal) {
            var percentage = (bytesUploaded / bytesTotal * 100).toFixed(2)
            console.log(bytesUploaded, bytesTotal, percentage + "%")
        },
        onSuccess: function (data) {
            console.log(data); //returns undefined
            console.log("Download %s from %s", upload.file.name, upload.url);
        },
        onAfterResponse: function (req, res) {
            var url = req.getURL()
            var value = res.getHeader("X-My-Header")
            console.log(`Request for ${url} responded with ${value}`)
        }
    });

    // Start the upload by default
    upload.start();
}

--丹

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-06 00:06:18

Vimeo的tus实现略有不同,因为"creation" step是使用Vimeo API完成的,而不是使用tus。如果您想提供诸如名称或描述之类的元数据,则应在初始API请求中提供这些元数据,该请求应如下所示:

代码语言:javascript
复制
var settings = {
  "url": "https://api.vimeo.com/me/videos",
  "method": "POST",
  "timeout": 0,
  "headers": {
    "Accept": "application/vnd.vimeo.*+json;version=3.4",
    "Content-Type": "application/json",
    "Authorization": "Bearer TOKEN"
  },
  "data": JSON.stringify({"upload":{"approach":"tus","size":666666666},"name":"name","description":"description"}),
};

$.ajax(settings).done(function (response) {
  console.log(response);
});

希望这能给你指明正确的方向!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65578744

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档