使用Vimeo的API完成PUT上传时遇到问题。上传进度调用返回:"错误:options.uri是必需参数。"
请注意,一切似乎都正确上传;在出现错误的情况下,我对成功非常谨慎。
相关代码(Node.js)如下:
app.post('/api/vimeo/complete', function(req, res) {
request({
method: 'PUT',
json: true,
url: req.body.upload_link_secure,
headers: {
'Authorization': 'Bearer OBSCURO-PATRONUM',
'Content-Range': '*/*'
}
}, function(error, response, body){
//console.log('Headers: ' + JSON.stringify(response.headers));
console.log('progress error: ' + error);
fs.writeFile('server_logs/vimeo-progress-log.json', JSON.stringify(response), function(err) {
if (err) {
console.log('log writing error: ' + err);
} else {
console.log('Vimeo progress log written.');
}
});
res.json(body);
});
request({
method: 'DELETE',
json: true,
url: 'https://api.vimeo.com' + req.body.uri,
headers: {
'Authorization': 'Bearer OBSCURO-PATRONUM'
}
}, function(error, response, body){
console.log('complete error: ' + error);
console.log('complete body: ' + body);
res.json(body);
});
});
答案 0 :(得分:1)
尝试在传递给请求方法的对象中使用uri而不是url。文档声称两者都有效(https://github.com/request/request#requestoptions-callback),但您可能正在使用该库的不同版本。
这听起来像是一个请求错误,而不是一个vimeo错误。