我在上传到 vimeo 时花了很多功夫。
- 我已经提出了门票请求。
- 我已经上传文件了。
- 我已经检查了文件是否已上传。
- 我需要使用我应该从票证中获得的complete_uri 响应来运行DELETE 方法。
但是,我没有从票证响应中收到任何complete_URI。
这是我的代码:
public static dynamic GenerateTicket()
{
const string apiUrl = "https://api.vimeo.com/me/videos?type=streaming";
var req = (HttpWebRequest)WebRequest.Create(apiUrl);
req.Accept = "application/vnd.vimeo.*+json;version=3.0";
req.Headers.Add(HttpRequestHeader.Authorization, "bearer " + AccessToken);
req.Method = "POST";
var res = (HttpWebResponse)req.GetResponse();
var dataStream = res.GetResponseStream();
var reader = new StreamReader(dataStream);
var result = Json.Decode(reader.ReadToEnd());
return result;
}
这个回复给了我:
- form
- 票证 ID
- 上传链接
- 上传链接安全
- uri
- user
为了完成上传,我需要运行本指南中的步骤 4:https://developer.vimeo.com/api/upload https://developer.vimeo.com/api/upload
发送参数 type=streaming 作为正文:
ASCIIEncoding encoding = new ASCIIEncoding();
string stringData = "type=streaming"; //place body here
byte[] data = encoding.GetBytes(stringData);
req.Method = "PUT";
req.ContentLength = data.Length;
Stream newStream = req.GetRequestStream();
newStream.Write(data, 0, data.Length);
newStream.Close();
目前,type=streaming 必须在请求正文中发送,而不是作为 url 参数发送。
这可能会改变以允许任一选项。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)