- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过 Ajax 将视频上传到 Vimeo,但在使用 Firefox 时遇到了 CORS 问题。
这是我正在使用的代码。只有在发布文件的最后阶段,CORS 保护才会阻止上传。
我已经检查了 header ,并且 Cross Origin 设置正确。
$.ajax({
url:'https://api.vimeo.com/me',
crossDomain:true,
headers:{Authorization: 'bearer ',Accept:'application/vnd.vimeo.*+json;version=3.2'},
error:function(){
videoError('Couldn\'t get a quota');
},
success:function(uploadQuota){
if(uploadQuota.upload_quota.space.free > 0 && (uploadQuota.upload_quota.quota.sd == true || uploadQuota.upload_quota.quota.hd == true)){
//Get Upload Ticket
$.ajax({
url:'https://api.vimeo.com/me/videos',
data:{type:'POST'},
type:'POST',
dataType:'json',
crossDomain:true,
headers:{Authorization: 'bearer ',Accept:'application/vnd.vimeo.*+json;version=3.2'},
error:function(){
videoError('Couldn\'t get a ticket');
},
success:function(uploadTicket){
if(uploadTicket.ticket_id != ''){
//Upload File
var videoData = new FormData();
$.each($('#video_upload')[0].files, function(i, file) {
videoData.append('file_data', file);
});
$.ajax({
url:uploadTicket.upload_link_secure,
type:'POST',
headers:{Authorization: 'bearer ',Accept:'application/vnd.vimeo.*+json;version=3.2'},
data: videoData,
cache: false,
contentType: 'multipart/form-data',
processData: false,
crossDomain:true,
//dataType:'jsonp',
error:function(){
videoError('Error uploading video. Please contact FDN with the ticket id:'+uploadTicket.ticket_id);
},
success:function(uploadData,status){
//Copy id to text box
}
});
} else {
//If none, process error
}
}
});
} else {
//If none, process error
}
}
});
有什么明显我错过了或者可以尝试的事情吗?
最佳答案
简短回答: Vimeo POST uploads不是为客户端 JavaScript 设计的。 PUT upload system 100% 支持 CORS。
长答案:
Vimeo POST 上传的开发旨在提供极其简单的上传体验。我们给您一份表格。您将表单放入页面的 html 中,用户使用该表单,并且一切都已设置。这不支持进度条。这是不可恢复的。
上传视频时,我们必须在视频可用之前执行一些后处理。当前的 POST 上传系统会在上传完成后重定向客户端来自动处理此问题。不幸的是,CORS 和重定向存在一些问题(我无法找到详细信息,但如果我没记错的话,规范规定将某些重定向作为错误情况处理)。
现在您必须自己完成上传。我们正在努力改进这一点,但目前您必须在 POST 响应的“location” header 中找到 URL。向此网址发出 GET 请求,您的上传就会完成。
Vimeo PUT 上传被设计为功能齐全的高级上传系统。它们是可恢复的,流式设计可以轻松支持进度条。您可以查询上传的状态,并根据命令启动和停止一切。 100% 支持 CORS。这将需要使用 HTML5 文件对象,该对象对 ie 9 及更低版本的支持有限。
[编辑] 现在有一个用于流式处理工作流程的非官方客户端视频上传脚本。您可以在这里找到它:https://github.com/websemantics/vimeo-upload
关于ajax - Vimeo CORS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26987727/
正在寻找一种方法来获取 Vimeo 视频的缩略图而无需(我再说一遍,无需)对 Vimeo API 执行 REST 请求? (不幸的是,以下“答案”已超过 10 年,并没有回答这个问题:Get img
要将 Vimeo 视频嵌入为背景视频,我在此代码笔中看到: https://codepen.io/BRacicot/pen/JpLmqo 该视频源网址是一种带有“外部”字样的特殊类型: https:/
我需要从 vimeo 上的“专业”帐户下载视频文件。这些视频对公众观众不可见。 我有一个允许我访问这些视频的用户帐户。通过“api-playground”通过我的帐户使用 API 时,我还可以使用其
我需要从 vimeo 上的“专业”帐户下载视频文件。这些视频对公众观众不可见。 我有一个允许我访问这些视频的用户帐户。通过“api-playground”通过我的帐户使用 API 时,我还可以使用其
一旦视频上传到 vimeo,我怎么知道处理已经通过 API 完成了。以便我可以将视频嵌入到 Iframe 中? 最佳答案 视频的 API 表示包含一个字段,status .此字段将包含表示视频状态的字
我正在使用链接在精美的盒子中播放我的 vimeo 视频 https://vimeo.com/513 ... 然而它们出现在非高清版本中。我必须单击高清才能查看它们。 如何链接到高清版 最佳答案 这是来
我想创建允许用户将视频上传到 的应用程序我的 Vimeo 帐户。我想对其他人隐藏这些视频。并且只允许我的应用程序的经过身份验证的用户查看这些视频。 我的问题是 Vimeo 允许我这样做吗?如果是,我该
使用针对/videos/ID 的 api 我得到了一堆链接,选择正确的格式,我很高兴在我自己的网站上播放它们。 但它很慢,我不在美国,对我的客户来说也很慢。 (我是 vimeo PRO 订阅者) 最近
我的网站上有一个视频播放器,其中包含多个视频,全部采用 slider 式布局。下面有每个视频的缩略图,如果单击任何缩略图,我需要任何正在播放的视频来暂停。我脑子里有 froogaloop.js,我的
我一直在此处的论坛上搜索此问题的答案,但每个解决方案似乎都与我的实际体验有所不同。 有没有办法让所有 iframe vimeo 视频自动播放 ?我们使用 vimeo 视频(静音)代替资源暴食 GIF,
对于 Youtube 播放器,我可以设置开始和结束时间参数,这将在此范围内裁剪视频。如何使用 Vimeo 播放器做同样的事情? 最佳答案 Vimeo JavaScript API: seekTo(se
类似于 this question询问如何在 tvOS 上播放 YouTube 视频,我想在我正在构建的应用程序中播放 Vimeo 视频。然而,as explained here ,常规的网络 Vie
我有一个 Vimeo 私有(private)视频网址列表 (https://player.vimeo.com/video/1234567890),我希望将其显示为页面上的缩略图。我找不到可行的方法来做
我在网上找不到正确的解释、教程或线程来解释以下内容:我“只是”想加载一个没有控件(播放、暂停、时间轴等)的 Vimeo 视频(我有一个专业帐户)只是纯视频(也没有顶部和底部的黑条)并将其在我创建的 d
以这张图片为例:http://b.vimeocdn.com/ts/449/060/449060084_100.jpgYoutube 可以通过 SSL https://img.youtube.com/v
我遇到了瓶颈,不知道如何进行这项工作。使用 Vimeo 的高级 API,我可以从一个带有缩略图的帐户中提取所有视频。单击缩略图时,视频会显示在上方,单击不同的缩略图会隐藏当前显示的视频。问题是即使视频
我的应用程序中有自己的视频播放器,如果我可以获得视频网址,我想在其中播放。 Vimeo API 有可能吗? 在我的应用中,我将允许用户搜索视频并在我的移动媒体播放器上播放。 最佳答案 通过 PRO 用
我收到速率“限制超出错误”。我知道 Vimeo 速率限制条件,我正在缓存 api 调用响应以减少 Vimeo 命中。 我不确定播放 Vimeo 视频是否会影响速率限制。 我正在使用 Vimeo 视频外
我的网站有一个嵌入的 Vimeo 视频。它嵌入在大约 1/3 屏幕宽度的列中;我希望用户在点击播放后自动全屏看到它。 播放器上的全屏按钮工作正常,但我想绕过它,以便用户在全屏模式下自动看到它而无需按全
我一直在处理两个视频的 oembed 响应。 https://vimeo.com/api/oembed.json?callback=vimeoCallback&url=https://vimeo.co
我是一名优秀的程序员,十分优秀!