【发布时间】:2016-07-30 08:46:57
【问题描述】:
我目前正在开发通过 AJAX 将视频上传到我的频道的功能。到目前为止,我已经成功地对授权进行了排序,并且正在我的频道上创建一个“视频”,但这就是它结束的地方。似乎没有任何数据通过。我不确定如何正确发送元数据以及实际视频数据本身是否正确发送。
这里是 YouTube 参考:https://developers.google.com/youtube/v3/docs/videos/insert
另外一件奇怪的事情是,将请求设置为异步,我没有得到响应,加载函数也没有运行。将异步设置为 false,我收到了 YouTube 的回复。
function UploadVideo()
{
formData = new FormData();
video = {
snippet : {
title : "Test Video",
description : "This is a test video",
categoryId : "22",
tags : "test"
}
};
file = document.getElementById("test_video").files[0];
ajax = new XMLHttpRequest();
formData.append("file", file);
formData.append("snippet", JSON.stringify(video));
ajax.open("POST", "https://www.googleapis.com/upload/youtube/v3/videos?part=snippet", true);
ajax.setRequestHeader("Content-type", "application/octet-stream");
ajax.setRequestHeader("Authorization", '<?php echo $authorization_header; ?>');
ajax.onload = function() {
if (ajax.status == 200) {
alert(ajax.responseText);
document.getElementById("video_response").innerHTML = ajax.responseText;
}
};
ajax.send(formData);
}
【问题讨论】:
标签: javascript ajax api video youtube